Quartz Composer to Animata OSC Plugin

I stumbled on the VVOSC framework yesterday and started messing around with it. It seemed really simple and I had a Cocoa application that sent OSC to Animata running in no time. So I decided to try to create a plugin for Quartz Composer that would allow me to send Animata compatible OSC messages. This wasn’t previously possible, because the default OSC sender in QC didn’t allow to send messages with mixed data types. The peeps over at vidvox forum have been trying to find a solution for some time now.

After a couple of hours and with some tips on compiling from vade, I had the plugin working!

I was really happy about that, because I really thought that writing plugins for Quartz Composer would be out of my skill range. It turned out to be pretty simple actually.

Download the plugin and the source code.

The available patches are:

  • Animata Layer OSC – Sends messages controlling visibility, opacity, absolute position and relative position of Animata layers.
  • Animata Joint OSC – Sends messages controlling the absolute position of Animata joints
  • Animata Bone OSC – Sends messages controlling the length of Animata bones.

Hopefully with this plugin Animata and QC can go from “not working together at all” to “the easiest way to communicate with Animata”.

  • Obviously Mac only, as it is a Quartz Composer plugin.
  • Requires a recent build of Animata from the source to have all the messages working.

Click here to download Animata revision 47 that I just compiled today. Should work at least on Intel Macs running Leopard

Let me know if something isn’t working or if you have suggestions on how to improve the code.

Tags: , , , ,

4 Responses to “Quartz Composer to Animata OSC Plugin”

  1. josh delorimier says:

    Hey…I have been checking out your quartz and vdmx plugins for animata and I can’t get anything to work at all. I put the osc sender plugin and animata plugin into library/graphics/quartz composer plugins, i am not new to 3rd party plugins for quartz and have never had a problem before. When I open your example file this is the error message I receive
    > (null)
    : Patch with name “QCPlugInPatch:AnimataOSCBonePlugIn” is missing

    > Iterator
    Cannot create node of class “QCPlugInPatch” and identifier “AnimataOSCBonePlugIn”

    > Iterator
    Cannot create connection from [“output” @ “Multiplexer_1”] to [“inputBoneName” @ “PlugInPatch_AnimataOSCBonePlugIn_1”]

    > Iterator
    Cannot create connection from [“outputClip” @ “RangeValue_1”] to [“inputBoneLength” @ “PlugInPatch_AnimataOSCBonePlugIn_1”]

    > Macro Patch
    State restoration failed on node “Iterator_1”

    > (null)
    State restoration failed on

    I am running a intel mac, 10.5.8, Quartz version 3.1, and vdmx….oh also I was using your revision 47 version of animata and it freeze everytime you try to quit…If maybe you could walk me through that after I get the quartz plugin working.

    Your help is sooo much appreciated!!!
    Thank you in advance

    • Månsteri says:

      Hmm. That sounds weird. I just did some changes to the plugin to make it work on Snow Leopard so I might have accidentally broken something for Leopard. I’ll try to find a Leopard machine to test this out. You could try compiling the plugin from the Xcode project that is included in the download. Which example file did you use? Can you find the animata patches from the patch creator?

      What do you mean by Animata freezing when you try to quit? There is a know problem with it. The normal keyboard shortcut cmd+Q does not work on Animata to quit it. You have to quit it from the menu or press ctrl+Q.

      Or does it actually freeze after hitting the quit button? That is not really an issue I could help with. I am not part of Animata development.

  2. iyo says:

    Hai .. Mansteri.

    cant you help me ..where i can get Animata Revision 47 that you just complied…because i have animata from animata.kibu.hu doesn’t have osc section on skeleton menu …thanks Mnasteri

    • Månsteri says:

      Hey, I can’t seem to find it now anywhere. I think the latest version on Animata’s website should work with OSC anyway. Just name the bone/joint and send OSC to it. The OSC section in the GUI was only for sending data out from Animata, if I remember correctly.

      I honestly don’t even remember why I had compiled that version and added it here for download…

Leave a Reply