Substitute Geometry allows an artist to replace a rigged and animated Low - Poly mesh with a final high resolution or mid resolution mesh.
Whats great is that it doesn't consider the UV placement or the Mesh Count of the meshes, instead it has a way of averaging the weights between the low and high resolution geometry which is awesome because this replaces the old traditional linear way of working ie. Model -> Texture -> Rig -> Animate -> Light -> Render. This technique allows for overlaps in various departments of production.
This is feature has been in Maya since Maya 7.0
How To Use It?
Here I have a scene where I have a low resolution model which has been rigged and animated.
I need to now replace this rigged and animated mesh with the final high resolution geometry shown below.
Both of the meshes have different UV's and Poly counts.
First select the geometry that needs to be substituted (Low Rez) and then Shift select the substitute geometry (High Rez).
Once the meshes have been selected you need to go to Skin -> Edit Smooth Skin -> Substitute Geometry.
Once here click on the option box icon and open up the option box for Substitute Geometry. In here make sure Disable non- skin Deformers is checked on. When on, any non-skin deformations the original piece of bound geometry has are disabled and then transferred to the new piece of geometry on substitution. To re-enable the deformations on the new piece of geometry, reset each deformers node state.
Then click on Substitute Geometry and Boom!
Your Low Resolution geometry is now substituted with a High Resolution geometry! What's even better is that it has maintained the skinning information and animation.
The newly substituted mesh now has the same animation as the earlier low-resolution mesh.
Here are a few clips that show the results.
Before Substitute Geometry (Low Resolution Mesh) (Clip_1 here
After Substitute Geometry (High Resolution Mesh) (Clip_2 here
The limitations are as follows :-
- Does not allow you to swap pieces of bound geometry.
- Does not work with subdivision surfaces.
- Does not work with meshes that have blend shapes applied on them.
I would like to thank Atul Bhatkar and Sameer Tulaskar for helping me with this tutorial.