Maya Pattern Animation

This browser cannot play the embedded video file.

The purpose of this assignment is to animate the RenderMan shader from last ST Coloration project. 

Since the ST pattern shader was created in RenderMan Shader Language (RSL), I am able to add custom parameter sliders to the shader 's attribute when it's imported into Maya. 

The Pattern

The ST shader contains some basic shape such as circle and rectangle, and animation can be made by manipulating the position and color relations between these elements. (Fig.1)


Fig.1. Maya Attribute editor screenshot, showing parameters of the custom RenderMan Shader. 

Design of The Pattern Animation

Instead of keyframe animation, I attempt to try another method which is music-controlled animation.


Fig.2. The relation between instrument and pattern.

A good example of using the waveform controlled method to animate a RenderMan Shader can be found at Ding Wei's RenderMan Portfolio. Ding uses a MEL script (you can download it free, from CreativeCrash)written by Alin Sfetcu to expedite the workflow of linking attributes. 

I want to achieve a more accurate representation (as shown in Fig.2.) of each instruments from the music I composed.

But there's no viable MIDI solution, I have to import MIDI notes into Maya by converting them to a .wave file using MIDI edit software. (Fig.3)

Screen Shot 2012-11-06 at 下午4.02.39Screen Shot 2012-10-29 at 上午9.17.43
Screen Shot 2012-11-06 at 下午4.06.062

Fig.3. The theme melody above was made using a MIDI editing software, then export as a waveform (.wav) file.

Screen Shot 2012-10-25 at 下午2.10.47 Screen Shot 2012-10-25 at 下午2.06.42

Waveform Controlled

The audioWave node in Maya can  extracts the amplitude value directly from a waveform format audio file, then use the value to drive another value in a 3-D scene. 

Unfortunately, the audioWave node in Maya doesn't have direct control over frequency and equalization, thus make it quite difficult to separate different instruments and tones from a single music file. 

One solution to this is by selecting and deleting the lower half of the animation curve, and scale/offset the remain part of the curve along Y axis. (Fig.4.)

Fig.4. The output value generated from audioWave node is now baked into a keyframe curve, which can be apply to almost any parameter in a Maya scene.

Screen Shot 2012-10-25 at 下午2.07.29
Screenshot node editor

Fig.5. Using Maya's Node Editor to connect keyframes to RenderMan Shader's custom attribute.


This browser cannot play the embedded video file.

Compositing process of the Pattern and the Scene

Final Thoughts

RenderMan is a highly sophisticated industrial standard technology. By learning the basic knowledge of RenderMan Scene Description Language (RIB) and RenderMan Shading Language (RSL), I have a more comprehensive view of 3-D computer graphic principle, as well as the rules of visual effect rendering. The fundamental skill I learn from this course also helps me build my foundation for future study.

More Information

Download AudioWave node in Maya

  • To use the AudioWave node, you need to download and install the Autodesk Maya Bonus Tool, and don't forget to load the plug-in in Maya's preference panel.

About MIDI Controlled Animation

  • MIDI controlled animation is more efficient and intuitive than waveform controlled method. By input a series notes from a MIDI file, then convert the tune, beat, strength or modulation into animation. 
  • One good example of MIDI controlled animation is Animusic.
  • Another good example of Waveform controlled particle animation can be found at here.

© Ziye Liu,  2012