Psonice's mac scene stuff

Home

My work

Experiments

Tutorials

Games

Links

Contact

Sorry for the total lack of design, I'll get some content on here and worry about that later (unless somebody would like to do some design for it? :)

This site is dedicated to mac scene stuff (and maybe random ramblings), particularly using Quartz Composer (QC from now on so my fingers have more energy left for demo making) for making demos.

About Quartz Composer

For anyone unfamiliar with QC, it's a tool for making realtime graphics, and it's part of the OSX SDK, which is on your OSX install disks so you already have it if you have a mac with Tiger or Leopard. The Leopard version is massively improved, so I strongly recommend using that.

It's intended to be used for all kinds of things, like transitions in applications, screensavers etc. It also just happens to be a very good demo tool, with a few catches (like the audio side is a bit lacking but useable, and 3d support is pretty limited). It's extendable via plugins though, and the files it saves are very easy to build into applications, fullscreen or windowed. It's fully accellerated via Open GL too.

Updates

Updated tutorials:

Premultiplied alpha: read if you're doing CI processing, it's important to be aware of it. I recommend reading it if you're doing GLSL and aren't aware of what premultiplication is too, it leads to faster shaders and higher quality.

Vertex samplers: they're very powerful, and a good way to do some cool 3d in QC, but they don't work. Explaination of why, and how to get around it if you need them.

16bit colour compatibility: 16bit/channel colour doesn't work on nvidia cards.

New demo: Numbers [party remix]

Get the demo here (~5MB). Or get the full quality video here (86MB).

Made by me in QC, in under 24 hours while at sundown 2008. Music by m0d, remastered by beatslaughter. Consider it a party hack. It's based on the 'Numbers broadcasts' - strange shortwave radio broadcasts thought to be used to control spy networks.

The demo isn't an 'executable' as such, as I released it as a .mov file. It IS realtime however, not a video. Just the packaging is a bit weird! I only took an old powerbook g4 to the party, and for whatever reason xcode wouldn't compile a basic fullscreen app. There wasn't a lot of time before the compo started, so I did this as a quick hack.

It's basically the main .qtz file for the project, which the few textures i used embedded in it. I then wrapped it in a .mov file (you can do that by choosing 'export to quicktime' from QC), and added the music as a separate audio track (both the quartz stuff and the audio will get their timing info from quicktime this way, so it stays in synch). From inside quicktime, you can set the playback properties to be 'demo like' - i.e. it runs fullscreen when you double click, and quits at the end of the demo). The difference from a normal demo is that quicktime treats it as a video, which is a bonus - you get the normal playback controls if you move the mouse, and escape will drop it back to windowed mode. You can scrub through the time bar and rewind too :)

Bugs / notes: First, this is leopard only. If you're on tiger, it fails very nicely - you get the end pic, and the music plays. No idea why, but it's better than a crash :D Also, there's a timer bug that might cause it to not play. This is pretty random, and I guess it's either a quartz or quicktime framework thing. It'll either play, or it'll show a still image with sound - if it shows a still image, you can still scroll through the demo with the slider. And if you mess around with it a bit, sometimes it will start playing again. Odd. I'll fix it later, if it's fixable.


Site and all contents ©2008 Chris Wood (except where stated).