Quartz Composer


On the quartzcomposer-dev list, someone mentioned that the ‘Render in Image’ patch is pretty gpu etc. intensive. I use it quite a lot for switching between different visible patches, so I thought I’d check it out in a bit more detail.

This zipped Quartz Composer file is a simple composition that uses ‘Render in Image’ and a ‘Multiplexer’ to switch between different patches.

Render In Image Composition

This zipped Quartz Composer file is the same composition, but using 5 standard macro patches and a javascript patch, designed to work as an inverse multiplexer (taking a index and switching the relevant output to 1, with rest set to 0).

Inverse Multiplexer Compostion

What was the outcome? Well the latter, uses 10 less patches, uses less AGP memory (measured using OpenGL Driver Monitor - in /Developer/Applications/Graphics Tools), and shows a smoother line in debug for Execution Time and Rendering Time. It definitely shows savings even on such a simple composition.

I find it odd that you have to use a javascript patch to do something so straightforward - surely this must confuse beginners? Also I couldn’t find a way of making the javascript detect how many outputs there are. Finally, although the javascript patch is fine for this, it would be better to have a real patch that could take a default input and a selected input, and allow those inputs to be any type (image, number, index, etc).

Hope this helps someone eke a bit more speed out of their composition. SteamSHIFT out.

Technorati Tags:
, , , , , ,

I have a very large composition which I use for my visuals (anybody got any good alternatives to having huge compositions - needs seamless switching from one composition to another). In fact it is so big that my default user account won’t load it! So, I’m doing a bit of work and I decide I want something out of it. The answer, create a copy of the composition and open it up in PlistEdit Pro, then chop out the stuff I don’t want, save and then open up in Quartz Composer. Bingo!

Technorati Tags:
, ,

This one stumped me for a bit … If you are using a Javascript Patch in Quartz Composer, watch out for the fact that if the inputs aren’t changing, it doesn’t process. The way around this is simply to add a ‘Patch Time’ node, connecting it to another input on the Javascript Patch. You don’t even need to reference it in the javascript.

SteamSHIFT out.

Technorati Tags:
, , , ,

Based on an experiment by Sam Kass (BTW check out his compositions - some very useful stuff there), here is a simple but useful quartz composer clip (put it in /Library/Application Support/Apple/Quartz Composer/Clips) that takes 2 images and makes the second one the same size as the first.

Technorati Tags:
, , , , ,

I have been playing on and off with SoundFlower but not had huge success until now when I have finally managed to get it to do what I want (sort of).

Basically, I just wanted to route the sound output from iTunes into Quartz Composer and also be able to hear it. For some reason I couldn’t get it to work. Since the release of SoundFlowerBed version 1.1, I can achieve what I set out to do.

My setup is this:

1. Using Detour from Rogue Amoeba (discontinued but free) to route iTunes into Sound Flower 2ch.
2. Audio Input in Quartz Composer - choose Sound Flower 2ch.
3. Using SoundFlowerBed, select 2ch output to be Built in audio.

Easy as pie. The only thing I haven’t worked out how to do is output to 2 sound output sources at the same time. Any thoughts?

NB: Detour doesn’t work with Garageband, but with a bit of messing you can get it to output correctly via SoundFlower.

SteamSHIFT out.

Technorati Tags:
, , , ,

Bass Bump

Experiment - using bass response from sound input to distort an image. Adjust the ‘Smooth Factor’ on the handy ‘Smooth a single value’ macro to get the best response (needs this or the response is too frenetic!)

Technorati Tags:
, , ,

NB: You apparently need to reimport the 2 flash movies into the composition and link them as QC seems to be having difficulty with relative paths or some such.

SteamSHIFT out.

This started life as a little part of another test I was doing, but it stumped me for a little while, so I thought I’d post it.

It’s also quite neat because it shows how you can use flash animations directly within Quartz Composer. I saved mine out as Flash 4 SWF files and they work fine. It’s a shame we can’t access all the goodies that ActionScript 2 has to offer; hey ho. While we are at it, one of the neat things about flash is that it will directly import animated gifs (which QC doesn’t); I brought the one I was using in, and used flash to trace the bitmap. I could then select all the stuff on the page and give it a white fill. Then I have 2 flash movies, both on black backgrounds, 1 with the character, the other just the filled outline of the character.

In Quartz Composer, I was doing some stuff with a sprite and I wanted to use a movie with no background. First up, there is no mask image input on a sprite, so you have to use ‘render in image’ with a billboard inside that (make sure you have a Clear node in there as well!), connected to the image input of the sprite. The other gotcha, is that you need to connect the mask image through a ‘Mask To Image’ node in order to get the desired mask.

maskcat.png
Click the image above for an example composition.

SteamSHIFT out.

Technorati Tags:
, , , ,

I’ve been mucking around with connecting up a Basic Stamp 2 to MIDI, for building controllers, however I have to admit, that when it comes to analogue to digital conversion, I’m a little out of my depth with the electronics; I’ll persevere because I want to beat the problem, but that doesn’t stop me wanting alternatives.

(more…)

So, I had a thought about using quicktime in Quartz Composer. I wondered if you could use a Quicktime plugin in order to use 3D objects in QC. So I downloaded the FBX plugin (from Alias) for QT and a model.

I can create a QT movie of the model (ie a .mov file) which works well inside QT - with full interaction. Import it into QC though and it works for a few seconds then you just get a white screen.

Here’s what I think is happening; the movie imports correctly and starts playing correctly, then QC grabs it and tries to render it as frames - which obviously won’t work. So then, I have a new feature request - show Quicktime as Quicktime!

Technorati Tags:
, , ,

« Previous PageNext Page »