My first idea was to generate keyframes in a “.car” file with a small external software
which parses a MIDI file and computes objects motions. After studying the file format
and doing some simple tries my conclusion was it will be very difficult to achieve
something easy to use with this technique. The major problem was the binding between
the objects to be moved and the associated MIDI events : GUI interaction is mandatory
to do that job.
So, I decided to study the Carrara SDK and the embedded Python techniques. After
a few hours I was convinced that a Python plugin should be feasible. I started a
first implementation called “PyTweener”. I got the original tweener example available
in the SDK and started to link the C++ “SimpleTween()” function with an embedded
Python interpreter. As I was totally new to SDK and Python, I have been very surprised
to achieve something running in only two days ! This early release was not clean
and had many problems such as memory leaks, but it was enough for my first boomer
animation driven by an audio file. For sure, this has been possible thanks to the
quality of the SDK: the API is incredible and gives access to almost every parameters
and features of Carrara.