- If you ever see FBXASC### somewhere in your Maya files, that's just Maya's way of dealing with characters that it can't understand. FBXASC032 represents a [space], for example. So far I've only encountered these when bringing in meshes from 3ds Max.
- Not sure about this, needs testing. But you can make 'left' and 'right' namespaces. Then name all your joints the same, but put them under the appropriate namespace. In theory this would make mirroring easier.
- Tear off a persp view when skinning and set it to Legacy High Quality Viewport, this will let you see the textures on the mesh, great for checking stretching.
- Hold shift+MMD from one node to another in the hypergraph and it'll open up the Connection Editor straight away.
Script (mel) |
Description |
parent -r -s |
Used to parent a shape node to another object |
arclen -ch 1 |
Gives you a curveinfo node where you can find the length of a nurbs curve or spline ik curve. |
string $stuff[] = `ls -sl`; int $numbjoints = `size($stuff)`; print("Number of objects selected: "+ $numbjoints +"\n"); |
Select objects then run this script. It'll count the number of objects you have selected. So works with most things, not just joints. I currently use it to count the number of joints going into engine. I make a set called 'joint counter' or something, make sure all joints are there. When I add new ones, I add them to the set. Then I can just select all set members and run the script. |
import maya.cmds as cmds viewport = cmds.getPanel(wf = True) if cmds.modelEditor(viewport, q = True, nc = False) == False: cmds.modelEditor(viewport, e = True, m = True, alo = True) else: cmds.modelEditor(viewport, e = True, m = False, alo = False) cmds.modelEditor(viewport, e = True, pm = True) |
This script was put together by Jack Plummer during his time at Automaton. Assign this to Alt+1 'On Press' in Maya's hotkey editor. This will hide everything but the geometry in your scene on the first press, and then show everything on your second press. Good for previewing animation quickly without clutter. |
shadingNode -asUtility pointOnCurveInfo -n "myName" |
Will create a pointOnCurveInfo node called myName and adds it to the utilities tab in the hypershade. makes it easier to find. |
dagPose -reset -name bindPose1 |
This will reset the bindpose on any given joint, you can select multiple joints if you wish. Select the joint you with to affect, move it to your new desired bind pose. With it still selected, enter the script into the mel command line at the bottom, change 'bindPose1' to whatever the appropriate bind pose is and hit enter. The geometry should stay where it needs to be and the joint has assumed a new bind pose. |
dagPose -bindPose -save |
Select the skeleton and enter this command, it will save a new bind pose for your skeleton. If you find you have too many bind poses, and you just want one, it can be useful to delete the ones that are there and then run this. |
setAttr "nurbsCircleShape1.isHistoricallyInteresting" 0; |
Can use this to make shape nodes disappear from the Channel Box. Particularly useful when you need to combine curves to make a control but don't want all the clutter. The shape nodes are still visible in the outliner. |
lockNode -lock off sphere1; |
Sometimes you encounter locked nodes in rigs that restrict what you can do with them. Use this to unlock them at your own risk, ha! |
import maya.cmds as cmds import pymel.core as pm # Get the panel pan = pm.getPanel(withFocus=True) # Add selected to panel cmds.isolateSelect(pan, addSelected=True) |
Just added this to my custom shelf. It adds whatever you've selected to the current 'isolate selected' view you have open. It's easy to make this also remove elements from your isolate selected by changing 'addSelected' to 'removeSelected'. |
Formula |
Description |
a^2 + b^2 = c^2 |
Pythagoras Theorem (right angled triangles) Useful for figuring out root motion for moving diagonally. |