driving animation in 3d software with midi data from ableton through touchdesigner
The pantov method
driving animation in 3d software with midi data from ableton through touchdesigner
this is technique shows how you can animate objects in 3d software synchronized to your music, no need for hand animation and allows you to animate several parameters at once. Also having lots of control to “massage” your midi data into usable animation tracks. Here I show the method for 3dsmax, but it can also be used for blender (blender has a add-on wich allows you to import .csv so no script needed) and will probably work for maya ,cinema4d etc if u write a script to import csv. after effects will also allow you to import animation tracks, method may be similar.
What u need:
ableton
max4live
3dsmax
touchdesigner (works with free version)
TouchDesigner Ableton Live Sync Environment
Get it here: http://www.derivative.ca/wiki088/index.php?title=Ableton_Live_and_TouchDesigner
(make sure to install the max4live stuff)
newer versions of touch have a ableton Link node, didn't try it, but should also work
my script:
get it here:
https://www.derivative.ca/Forum/viewtopic.php?f=20&t=11201
step 1
build a music project in ableton
step 2
in ableton route the midi to the max4life plug-ins, these will convert it to osc data, set the right ip address.
(localhost if u work on just 1 pc)
step 3
fetch the osc data in touch designer (sync environment demo file has lots examples of whats is possible)
step 4
route the osc data to my .tox (my method uses 10 channels to work, if u have less, make some dummy channels. If u want you could alter my max-script to make it work with any number of channels)
step 5
inside the .tox make sure the data comes trough, and open the parameters of the record Chop
step 6
press record in the record Chop, then start playback in ableton
step 7
let the tune play, then stop recording in the record Chop
step 8
export the data from the output file Chop, save as whaterver.txt
step 9
open 3ds max, import your music, set the right frame rate, run my script, open whatever.txt, load
step 10
the script created a point object with a attribute holder, you can see the values in the modifier stack and graph-editors. Now use parameter wiring to link animation spinners to the attribute holder.
tutorial:
example: