Finally found a little time to port most of my After Effects plug-ins to the OpenFX format. So far I have Generator, Celulight, Occlusionist, Edgar, Floodgate and a couple more filters running in both 32-bit and 64-bit in Windows and Linux.
The port was fairly straightforward: Back when I was rewriting Normality for version 3.0 I’d designed a portable wrapper around the After Effects–specific parts of the code, so it would be easy to separate the graphics algorithms from the GUI side. My plug-ins also share many libraries with my 3D shaders, which were already designed to be cross-platform and 64-bit capable.
So this strict separation paid off for me as it made porting the software to the OpenFX format quite painless.
What's this OpenFX business?
The OpenFX (OFX) format is, as the name suggests, an open standard for visual effects plug-ins.
For me as a developer there are a number of technical benefits as the API is open, reasonably modern and far more accessible than the proprietary, aging and convoluted After Effects API my plug-ins were originally written for.
The really great thing for developers and users alike is that OFX is supported by a growing number of compositing applications including Nuke, Fusion, Shake and Toxic/Maya Compositor. (Notice a prominent compositor missing from that list…?)
Anyway, that means the next time a software developer decides to arbitrarily end support for your platform of choice, you can at least take your collection of plug-ins with you.
Normality for OpenFX?
Currently not, unfortunately… as much as I like the OFX API, it does have some limitations which make a faithful port of Normality impossible.
I do have a solution in mind but it’ll take some time to design and implement. Without revealing too much at this point, I’ve been considering freeing Normality from the shackles of a host application altogether for quite some time now…