What's New
The VJ interface, the new programing patches, Open CL & Mesh Renderers, the limiting of currently supported hardware consequent upon Open CL, the support for .dae [ Digital Asset Exchange file format ] , the loss of some 3rd party plugins and patches, a couple of new patches, a better organised patch library, the growing number of Apple's Snow Leopard sample compositions and much more besides.
We can now boot into 32 bit mode, which helps some 3rd party plugins to spring back into life, more details below. It will be interesting to see just when a full 64 bit kernel boot will be default on OS X 10.6.x. Currently we can boot either into 32 or 64 bit kernel and extensions, other extensions and frameworks are either 32 & / or 64 bit capable.
Standard Mesh Template with 3rd party .dae [GeorgeHart.dae] FROM TaffGoch
We are suddenly presented with a need to set up additional testing conditions if we are seeking to make an item that depends upon either a set of limited conditions, or a set of generally default conditions on pre 10.6.x machinery, or on non Open CL 10.6.x clients.
Expect more use of Open GL and Open CL info conditionals within compositions. This, in some ways , is nothing new and is seen implemented for Open GL info in Jelly, one of the earliest iTunes Quartz Composer music visualizers. A revamped Snow Leopard only versioning of Jelly was my first port of call. See Doodles and Noodles for example.
The Developer tools Quartz Composer XCode projects compile and work without a hitch. There is a growing number of such sample code projects revealing more about Open CL, .dae support and QC4's capabilities with these newly supported technologies, See Sample Code Studies for further details..
I've simply been on a bit of a discovery journey with Snow Leopard, see Doodles and Noodles for further information.
There are Apple's own Quartz Composer documents online. At the time of writing, October 2009, Apple's own online documentation for Quartz Composer is still in a state of flux, with a growing number of new and some dead links. They still remain a core source of reference for anyone wishing to programatically exploit , extend or develop within Quartz Composer.
Open CL
Open CL is the biggest change to QC and Snow Leopard in general. It is most immediately being exploited by graphics related applications, no surprise as the chief developers have been GPU manufacturers. Other types of hardware, such as DSL chips can also be levered by Open CL, so the possibilities only begin historically with GPUs and CPUs. It won't stop there. QC wise the Open CL programming patch takes .cl kernels and allows them to be rendered via Mesh Renderers. This is seriously cutting edge technology; when it works it can work blazingly fast. When one blunders into Open CL memory leaks, it can create total snarl ups and other less than desirable traits. See Sample Code Studies for further details.
User Interface
The application has been revamped into a VJ styled patch coding visualization tool. The only thing missing is the incorporation of an in-built audio and video editing window, but that is hardly likely. Like a lot of users, I'll just get used to it, though I can understand the initial grumbles of some who saw no in built switch to old interface option.
Custom Patches
A fuller exploration of what 3rd party plugins work in SL and how to program up some Snow Leopard compliant plugins of our won is conducted elsewhere. Suffice to say that some patches work in SL QC4 only in 32 bit QC4 mode. They simply disappear in 64 bit mode. Small and sometimes aggravating progress can also be made with 64 bit build and run sessions . The good news is that 3rd party plug in dependent compositions are only having to wait for so long as authors bring their plugin stock up to SL worthiness.
Network
Arbitrary XML is now available from the XML Downloader patch .See Doodles and Noodles for further details.
New Patches
2D Fluid simulation, Interaction & Feedback and, of course Open CL and Mesh Rendering .See Doodles and Noodles for further details.
All compositions created in QC 4 using only Apple's default patches. All movies rendered offline using Quartz Crsytal from Kineme and output with QuickTimePro.