General Setup

Documentation  |  

Ziva Characters

Bone Rig

This file contains the Maya joints as well as the skeleton geometry (the Maya joints are what drives the skeleton geometry).

Muscle Rig: 

In this file, the same skeleton geometries are now Ziva bones and the muscle geometries are Ziva tissues. As part of the authoring process, muscles are attached to bones using zAttachments. Curves that drive zLineOfAction are riveted to the skeleton geometry objects present in this scene. Start by creating a point cache of the moving skeleton geometry. Then, simply open the muscles setup, import the point cache and use it to drive the skeleton in your muscles setup scene.

Skin Rig: 

This file contains the fat. This is the volume between the muscles and the bones, and the exterior skin, and is solved as a Ziva tissue. The exterior skin is also solved as a Ziva cloth. Much like the previous steps, the fat/external skin are driven with a point cache of the muscle solve from the previous pass. Because the cloth deforms along the edges of the geometry (as opposed to tissues which deform at the tet level), there will be very dynamic wrinkle deformations from solving the epidermis as cloth at the same time as solving the fat."

Final Blend Rig: 

The Skin Blend is a simple deformer rig which blends the skin cluster with the simulation results.


Ziva characters are solved from the “inside out”. In this example, the setup process starts with bone rig, and moves onto muscles, skin and the final blend – sequentially. Each of these rigs is a dynamic, simulated object or collection of objects, and they are all driven by ‘kinematic inputs’. These kinematic inputs are the point caches of each pass. So, for each step of the setup process, you will need a point cache of the previous setup.­

We suggest using Alembic for your point caches. To effectively run simulations and export Alembic data at the same time, you must render the Alembic over a number of frames using the regular Maya interface. The start frame of the Alembic Export should always mirror the zSolver Start Frame. Although it may sound intuitive to use the Ziva cache to produce your point caches, the Ziva cache was designed to be exclusively an authoring tool. Its is useful to scrub the timeline and see the solve happen from different angles with all the GL drawing inside the viewport. This is very different from exporting point caches.

Additionally, to drive Ziva bones with alembics from a previous pass, we recommend making a simple blendshape between the imported animated Alembic geometry and the corresponding Ziva bone geometry in the scene. A script would be helpful to do this as it will be needed throughout the setup process.