Learning Quartz Composer Part 1

What is it?
Quartz Composer is a versatile visual programming environment ( mac only +needs either tiger or leopard to work), that enables complex compositions to be created without writing a single line of code. Any mac running 10.4 or later with Quicktime can play quartz compositions as stand-alone files, but importantly, they can also be easily integrated into various workflows for other software ( eg as customised FX in editing or real-time video software) or used as an iTunes visualizer or system screensaver.

In other words, you can build your own interactive software or effects using Quartz 2D, Core Image, Core Video, OpenGL, QuickTime, MIDI System Services, RSS (Really Simple Syndication), XML and various hardware inputs ( eg mouse, audio inputs etc ) – without needing to know any code. It is however, also kinda complicated to get a non-programmer head around. The benefits for mac visualists though, are starting to get too large to ignore: continuous developer and community momentum behind it, easy integration into many other applications ( eg VDMX, Resolume for live work, or other apps for production ), a large body of existing examples that can be customised to suit, and the potential to create or invent visual effects, transitions or processes that are exactly suited to your one-off or overall needs.

With that in mind, I’ve decided to try and document my own learning process with it here, and aim to post a weekly-ish blog post exploring what I’m learning, or what I’m struggling with. Hopefully this’ll motivate me to get up to speed quicker, but also provide something useful for someone else. This first post just sets the scene, puts Quartz Composer in some kinda context, and offers up some links to the key online resources for it. With the next post, I’ll try tackle what it feels like to dive into, and how to start making sense of it, what kinds of rules and quirks it has, and how to start making your own quartz patches. Yes, neantherdal baby steps, because they’re mine. Somewhere in the distance, there’s an endgoal though, of being able to execute a range of long desired visual effects and processes that would be handy / interesting in some situations. And so begins the Hobbit like adventure..

What You’ll Need
- A mac running the Leopard ( preferably ) or tiger operating system.
- XCode Tools ( free on the OS installer disc, once installed, Quartz Composer + examples can be found in the /Developer/Applications/ folder).

How does it work?
Quartz Composer creates Quartz Compositions ( motion graphics programs that work by assembling ‘patches’ in a workflow for processing and rendering. There are several types of patches eg Composite Patches / Controller Patches / Environment Patches – Filter Patches etc which can be combined in various ways.
User Interface
Opening up QC, options for Blank Composition, Graphic Animation, Graphic Transition, Image Filter, Music Visualizer, RSS Visualizer and Screensaver offer easy templates to begin from, and give some idea of the program’s scope.

Once open, there are four main windows to consider:Editor window – a workspace for assembling and connecting patches. Also, on the editor window toolbar clicking the patch parameters button will open up the Patch Parameter Pane – a place for Editing input parameters.Patch Creator – utility window for browsing and getting information about QC patches and clips. ( A good place to browse and familiarise with available patches )Patch Inspector – Utility window for editing input parameters and patch related settings.Viewer Window – Where you get to see the results of all your pixel mangling.

A good beginner exercise is just to open up the example patches that are installed with the program ( found inside Developer/Examples/Quartz Composer ). Exploring some of those will help clarify the relationships between the above four windows, and give an idea of how it operates. I’ll dive in further with the next post, and the resources below will help anyone wanting to keep on trucking.