Built-in Demos

Ziva VFX comes with built-in demos. These demos are fully self-contained and don’t require any external files, geometry, or scripts to run. You can find them in the Ziva Tools menu.

The purpose of these demos is to give simple working examples that showcase the features of Ziva VFX. We hope that the TDs will be able to then expand these examples as needed in their work.

For example, launch the Ziva Tools➞Run Demo➞Anatomical Arm. You can then press “Play” and the solver will start computing the muscle deformations. This demo demonstrates a basic human upper arm scene. The bone motion is keyframed and the Ziva solver solves for the muscle motion. The muscles are setup to fire as the elbow bends.

Anatomical Arm Demo

Launching the built-in anatomical arm demo.

These built-in demos are a great learning tool because you can see the complete sequence of MEL commands to make the demo. For example, the command Ziva Tools➞See MEL source of demo➞Anatomical Arm displays the MEL source code of the Ziva “Anatomical Arm” demo in the Maya Script Editor. You can then copy/paste the source code, and modify it as you see fit.

The most relevant code can be found in the “main” procedure of each demo. Note that the source code contains long arrays specifying the various paint maps. This is needed to make the demos self-contained. In practice, however, the maps are painted interactively by the artists and there is no need to store them in such a way (and this is how we made the maps for these demos: we painted them interactively, then read them from the Maya plugs and converted them to MEL source code). Our plugin offers two ways to save the Ziva rig, including the painted maps: Maya Save command, and zBuilder.

See MEL source code

Seeing the MEL source code for the built-in anatomical arm demo.

If you look at this MEL code, you will see that it is extensively commented, teaching you how to set up the Ziva scene by yourself. Everything in Ziva VFX is scriptable. Actually, all the ziva commands are Maya commands, so you can call them in the same way as every other Maya command, either from MEL or Python.