Compatible from Maya 2019 through current
Windows, macOS, Linux
SHOWCASE
TUTORIAL
A powerful C++ plug-in for snapping meshes in real-time. Suitable for retopology tasks and much more. A retopo shader is included.
Put the plugin file in your maya plug-in path. To retrieve the path, just type in the melscript console editor:
getenv MAYA_PLUG_IN_PATH
Under Windows it's usually:
C:/Users/user/Documents/maya/mayaversion/plug-ins
Unzip the python files in one of your maya script paths
To retrieve the paths, just type in the melscript console editor:
getenv MAYA_SCRIPT_PATH
Under Windows it's usually:
C:\Users\stu\Documents\maya\scripts
To launch the tool
Load the plug-in with the plug-in manager then type in the script editor:
Python:
import zi_constraint
zi_constraint.main()
We recommend using a shortcut
NOTE
TopBar
Local Space: Set the transform to be in local or world space. This works only for Transfer mode.
Verbose: Would provide more data infos in the script editor.
Tolerance: Set the projection accuracy for Transfer. The default may be enough (0.01) for most scenarios.
High Resolution Rabbit: This specify the geo to be snapped on (target) select a mesh in the scene then clik this button. Note that you can click on the name of the geo below to select it. If you select a curve, you will have different snapping options.
Low Resolution Rabbit: This specify the geo which will be deformed (source)select a mesh in the scene then clik this button. Note that you can click on the name of the geo below to select it.
Reference: It will put the target geo as a reference state. This is convenient for selecting another geo components which are overlapping. It's a google button.
Vertexture View: please visit this page
MODE
Face: For snapping source selected component(s) on target surface
Vertex: For snapping source selected component(s) on target closest vertex.
Order: For snapping source selected component(s) on target vertex sharing the same index.
Constant: If a curve is specified as a target, you would be able to snap geo components to this curve.
Even: Not implemented yet.
Transfer: Will snap the selected mesh component(s) to the specified geometry. if no components are selected then the whole mesh will be transformed.
Connect: It will create a custom node (ziMeshConstraint) and will link the source to the target geos so the snap will be permanent in worldSpace. Note that a node attribute called "Threshold" is tweakable. It is the ray distance, if you deal with big scenes increase the value. Do no set it too high, so it doesnt get too slow. It's a toggle button
*LMB = Left Mouse Button
*MMB = Middle Mouse Button