This repository serves as a template for GPU-based plugins for Adobe After Effects. It employs Adobe's macro set and boost postprocessing from Boost to create universal compute shaders compatible with Metal, Cuda, and OpenCL.
To turn this template into your own project:
-
Clone this repository into the Adobe After Effects SDK folder:
SDK/Examples/Effects/
. -
Open the
setup.sh
file and replace the project name:# Original and new project names OLD_PROJECT_NAME="GPU_Skeleton" # Please replace with your project name NEW_PROJECT_NAME="NewProjectName"
-
Run the setup file:
./setup.sh
. This will replace all instances of the old project name in file names, variables, etc. with the new name. It also removes information about this repository and creates a new one.
The following features are implemented in this template:
- Display an image (PNG) in the effect window and print debug information inside it using a custom parameter. Also, use the stb_image library to load the image into the global variables buffer.
- Debug a Metal shader by retrieving compilation errors and displaying them in the effect window in the corresponding custom parameter.
- Debug using
Debug.h
and macros to print information in the terminal, as well as to calculate time. This functionality is taken and modified from ISF4AE.
The following resources were used:
- Adobe After Effects Plugin Documentation
- ISF4AE - a plugin for creating effects based on OpenGL shaders for Apple.
- stb - an image conversion library.
Many thanks to Nate Lovell for his video about GPU, which inspired the creation of several great plugins and this template to kickstart your projects conveniently.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.