Posted by campbell
on February 1, 2008 at 2:32 AM PST
Introducing a new framework for GPU-accelerated effects... Web Start demo included...
For the past few months, I've been involved with various aspects of Project Scene Graph and the JavaFX Script runtime libraries. Hans has already introduced the core elements of the scenegraph package, and Chet has donned his Groucho mask to explain the animation package in great detail (three chairs for that!).
Today I'm finally going to talk about the third major component of the overall Scene Graph project, and that is the Effects Framework . If you've been wondering why I've been quiet lately, this is the reason.
Our team has already had plenty of experience in delivering GPU-accelerated imaging operations. Now we've taken it to the next level, by offering a long list of effects commonly used by designers, packaging them up into an easy-to-use API, and providing a sophisticated implementation that can take advantage of GPU acceleration (and later, SIMD instructions on the CPU) for blazingly fast performance.
All of this integrates seamlessly with the scenegraph and animation packages, and soon will be exposed just as pleasantly through the JavaFX Script runtime APIs. You can even take advantage of the Effects Framework in existing Swing and Java 2D applications.
Anyway, enough yapping; let's move on to the introductory demo... This application demonstrates just a few of the effects available in the new API. I'll let it speak for itself. (Requires Java SE 6 or above.)
With default options -- will take advantage of the
Direct3D-based backend (if possible*) on Windows...
With OpenGL backend enabled -- for Windows, Linux, and Solaris (if possible*);
Mac OS X coming soon...
With all GPU-acceleration disabled -- try this if you have problems with
one of the above.
(*) GPU acceleration requires the latest build of
JDK 6uN , a
compatible graphics card, and up-to-date graphics drivers. If
GPU acceleration cannot be enabled for any reason, the framework
will automatically fall back on the software-based implementation.
Yes, the software-based backend is much slower than it should be;
we're working on that.
These projects are still in the early stages, but over the next few weeks, I'll have much more to say about (and more demos to share from) the Effects Framework and the Scene Graph project at large, so stay tuned. In the meantime, take a gander at the JavaDocs and let us know what you think. Hans should have news shortly of an 0.5 release that includes all of this and more.
In my ears: Enon, "High Society"
In my eyes: Found Magazine #3