May 5 2010
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…
October 26 2009
Atlas is a port of the pfstmo tone mapping operators to the Adobe After Effects plug-in format. This plug-in is free open source software licensed under the GPL.
Tone Mapping
So what’s tone mapping you ask? According to Wikipedia:
Tone mapping is a technique used in image processing and computer graphics to map a set of colours to another; often to approximate the appearance of high dynamic range images in media with a more limited dynamic range.
The technique is particularly useful if you have high dynamic range images, such as rendered CG-imagery in floating point color-depth (OpenEXR) or HDR photographs, and you want to bring their broad spectrum into a range more suitable for display on a computer monitor or television screen.
There exist numerous tone mapping operators that approach this problem from different angles and achieve varying results.
| Supported tone mapping operators |
| Drago |
| Ashikhmin |
| Reinhard ’02 |
| Reinhard ’05 |
| Mantiuk |
| Durand |
| Pattanaik |
| Fattal |
Lately, the effect has also become something of a fad in photographer’s circles, as a quick Flickr Search will show.
Still tone mapping is a very versatile technique that can be used for photorealistic as well as artistic effects.
Download Atlas 0.3 (Beta)
Download
Sorry, Windows only for now. The included source code may be used to compile a release for Mac OS X by someone with more time on their hands than me.
If you want to play with the code you will also need to install the After Effects SDK, which I cannot include for legal reasons.
Usage Notes
Atlas is designed to work exclusively in 32-bit floating point color-space. Applying Atlas in 8-bit or 16-bit projects will yield unpredictable and/or possibly unbelievably gross and ugly results. Don’t say I didn’t warn you…
Donations
Developing free software costs time and money. If you appreciate my work and use it in production, please donate.
I will be more inclined to release cool stuff in the future if I see that my work is appreciated.
May 31 2007
The latest Celulight Build was just uploaded and contains several fixes:
Pre-comping should work now. I didn’t have time to test it properly, but I’m confident that I found the issue.
The number of parameters has been stripped down a bit and assorted in a more logical manner.
The installer program is back and should now install to the correct directory.
Download Celulight Installer
I won’t have that much time to work on my plug-ins this month as I am visiting my family in China.
May 25 2007
I found some time to fix a few minor issues in my Normality plug-ins for After Effects.
There are no new features this time around, just some bug fixes, speed and interface improvements as well as a proper installer.
May 22 2007
Celulight is progressing well, so here comes another pretty large update!
Changes in build 293:
Improved normal map generator. Thanks to Chris Forrester for his help with the new algorithm!
Proper specular highlights — the old ones were just a hack, now it’s accurate and realistic.
Download Celulight Beta
May 20 2007
Another weekend, another new version of Celulight for public testing: I’ve fixed a number of bugs and added some cool new features, including:
The normal map generator has been vastly improved and yields much smoother results without blurring out the details.
It’s possible (and recommended) to specify the line width — this way, Celulight can also shade the outlines so you can get rid of them in your renders if you like.
The blue channel (height) is calculated. This allows the rendering of effects such as rim lights and embossed surfaces.
It is now possible to select individual light sources.
The light’s colors are used for shading.
Support for multiple light sources has been implemented.
That’s the new features I can think of… I won’t list all bug fixes here for now.
As always, you can grab the latest version of Celulight here.