Quartz Composer Rocks

symphonix

Scratch & Sniff Committee
You might have heard it. You might have even seen it. But by far the coolest feature of Mac OS X Tiger is also one of its best kept secrets.

Maybe you've seen the RSS screensaver. Pretty neat, huh? Wouldn't it be nice if us non-programming type people could whip up a screensaver that cool? Or use those awesome slideshow transitions in new ways.

Well, put that Tiger DVD back in the drive and get the XCode developer tools installed, and then browse to (Computer)/Developer/Applications/Graphic Utilities. Launch Quartz Composer, and let the fun begin.

With Quartz composer, you can animate sprites, 3D objects, lighting effects, text, pre-recorded or live video and core image extensions into a whirlwind of animated eye-candy bliss. These in turn can be controlled in many ways, including in response to audio (make your own music visualisers) and even Internet resources (such as RSS feeds & images). You can even use spotlight searches or folders of images.

You put it all together by dropping operational units into a workspace. Each operational unit represents a graphical or programmattic function, such as creating a sphere or altering a color. These units appear as boxes with a title across the top, and a number of "jacks" down either side. There are jacks for inputs on the left, and jacks for outputs on the right.

Users can link these together by drawing connections with the mouse. They appear like cables being run from one unit to another. By selecting a module and bringing up the inspector window, you can see and adjust all of the inputs manually.

So far so good. To test the idea, try dropping an image file into the workspace. You'll be presented with an "Image" module, which has an output jack. You can then put a sprite on the workspace, and hook the image module's output to the "Image" input jack on the sprite module.

You now have an image. Bring up the inspector, choose the sprite module, and muck around with moving the image around. Then, try hooking up appropriate modules to the other jacks, and see what you can do.

You can see the results in the render window in real time, as you make the changes. Whats more, if you show the render window's toolbar, there is an option to view the composition at full screen.

Lastly, you can save the file (which has a .QTZ extension) into your ~/Library/Screen Savers folder, and it will become available as a screen saver. This is incredibly cool ... check my demo screen saver below to see how its done. Final hint. Any inputs you publish (by right clicking a module and selecting "published inputs") will be available as options when you click on the options button in the screen savers preference pane. Cool!
 
Back
Top