Process Textures with Jitter, Connect to Unity Game Engine

Jitter works brilliantly when it comes to processing signal - and that means for signal-like work with video and textures, it’s fantastic, as well as the usual Max-y tasks like processing input from physical sensors and input devices and the like. But try to do a whole lot of sophisticated 3D work, and Jitter may not be the best tool. For game-style 3D graphics and interaction, you want some standardized rendering and scene graph tools to take care of the hard work, plus physics and other capabilities that bring together your 3D scene.

That’s why [myu], the Max - Unity Interoperability Toolkit, looks so appealing. It not only allows for bi-directional data integration (via TCP) of Max and the Unity game engine, but can dynamically pass textures between the two. For those of you comfortable patching, say, chains of shader processors in Jitter, that means you can very quickly add some of the tasty 3D scene powers of Unity. Put together your textures in Jitter, and, say, dynamically process input from a Wii Fit balance board, then bring the input data and textures into Unity. (Unity is a friendly, elegant game engine built in C# and Novell’s open-source Mono implementation of Microsoft’s .net. Unity had previously been Mac-only but with a major new release now runs on Mac and Windows.)

The toolkit is the result of research at Virginia Tech Interactive Sound & Intermedia Studio director Dr. Ivica Ico Bukvic.

Needless to say, this could have powerful implications for all kinds of live and interactive installation applications. And yes, it is all released under the GPL.

[myu] Max-Unity Interoperability Toolkit v.1.0 Released [Cycling '74 Forum]

More Max+Unity Game Engine Goodness, with Powerful Toolkit for Max, Jitter, Pd

Teaching Adaptive Music with Games: Unity + Max/MSP, Meet Space Invaders!

For other examples of combining Max and Unity - in this case for Max’s musical powers and Unity’s gaming prowess - see another story from today:

Teaching Adaptive Music with Games: Unity + Max/MSP, Meet Space Invaders! [Create Digital Music]

Updated: About those textures…

Ico follows up to answer our questions about how you might use textures with Jitter and the Unity Game Engine, via his [myu] toolkit:

read more

Generative Inspirations: Texture Glitch, Flight404 Processing + Lemur Goodness

If you ever want to stimulate the visual centers of your brain as you work with your graphics tools of choice, there’s endless inspiration from the visualist blogosphere.

In case you missed it in comments, our friend vade has done some terrific work using Max/MSP/Jitter and “glitchy” texture mapping. I just now noticed he was using audio input to do it, which can be a terrific way of modulating visuals for organic results. (Without knowing he had done that, I tried some similar experiments this weekend using the audio peak input in Quartz Composer.) The effect is simple but incredibly effective: play with texture coordinates so that the textures come alive. Don’t miss the first video.

This would be equally applicable to Processing, Quartz Composer, or anything else that does even basic texture mapping and audio input.

Texture Coordinate Munging [vade blog]
… and more good texture/3D Jittery loveliness


Meanwhile, in Processing Land, generative virtuoso Flight 404 (Robert Hodgin) has done amazing things with a particle system, magnets, and circles:

Magnetism + Spheres = Fun!! [Flight 404 blog]

See also this (earlier?) magnetosphere video (thanks, Jaymis, who was impressed enough he said something PG-13 about its awesomeness.)

Utterly stunning, and better yet, he’s included Processing code and walked through the whole process of building it. Check comments for more insight. But Robert didn’t stop there. He’s gone and bought himself a multi-touch Lemur controller, with still more cool videos:

Pretty lights! [Flight 404 blog]

I’ve been critical of some aspects of the Lemur in the past (see my Keyboard Magazine review), but it has been improving, in terms of the flexibility of the interface and how it assigns MIDI and OSC messages. One key advantage for visuals that can be less of an issue with music is stutter-free control of on-screen elements (which requires a higher resolution), and generally having an interface that lends itself to controlling 2D and 3D visual elements.

And, of course, in Robert’s hands it does some wonderful things.

Why am I putting these in the same post, other than sheer laziness? What strikes me about the effectiveness of each of these examples is that the quality of motion animates them in a way that is organic and alive. In each, the core technique and visual elements themselves are relatively simple, but the rhythm of the gesture of the visuals motion makes them more engaging. That, and just focusing on these two ideas, there are countless possibilities in whatever environment you prefer (Jitter, Processing, or something else).