1 unstable release
0.1.6 | Mar 2, 2022 |
---|
#830 in Graphics APIs
200KB
5K
SLoC
after-effects
Current version: 0.1.6
High(er) level bindings for the Adobe AfterEffects (Ae) SDK.
This wraps many of the API suites in the Ae SDK and exposes them in safe Rust.
This is WIP – only tested on macOS
. Will likely require additional work to
build on Windows
.
Prequisites
Download the Adobe After Effects SDK.
Note that the SDK published by Adobe is outdated if you are using the 3D Artisan API to write your own 3D renderer plug-in. Also see Features below for more information.
Ignore this if you just want to develop 2D plugins (which still have access to 3D data).
Define the AESDK_ROOT
environment variable that contains the path to your
Ae SDK. Typically the directory structure will look like this:
AfterEffectsSDK
├── After_Effects_SDK_Guide.pdf
├── Examples
├── AEGP
├── Effect
├── ...
Features
-
artisan-2-api
– Use the 2nd generation Artisan 3D API. This is not included in the official Ae SDK. Specifically it requires:AE_Scene3D_Private.h
PR_Feature.h
Contact the Adobe Ae SDK team and ask nicely and they may send you theses headers.
Using
Add after-effects
to your dependencies.
cargo add after-effects
Getting Started
There are currently no examples. Use the C/C++ examples in the Ae SDK as guides for now. They translate mor or less 1:1 to Rust when using this crate.
Help Wanted/To Do
-
Examples! I have a few plug-ins but they need polishing.
-
A build system extension that creates the bundle for Ae using
cargo-post
/cargo-make
/cargo-bundle`. I.e. enter one command to get a plug-in ready to load in Ae. Currently there are manual steps and they need documenting too.
License
Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib at your option.
Dependencies
~1.7–5MB
~100K SLoC