Lexicon
We take great care in defining our terms. It is important that we all refer to the same concepts and avoid misunderstandings.
E
- Euler Rotation
- It is a 3 dimensional rotation method that is known to lead to gimbal lock. Despite this, it is the easiest method to visualize and it can even have f-curves/graphs that plot values over time with the ability to adjust values. Due to its inaccuracy, two completely different sets of Euler values can have the same orientation in space. This is how Maya’s “Euler Filter” button corrects gimbal issues since it finds the alternate values that are closer to the previous key.
G
- Gimbal Lock
- When using an Euler method for rotation, rotating the second axis by -90 degrees will lead to the other two axis rotations to overlap. This effectively limits the degrees of freedom that an animator will be able to access safely and will result in erratic behavior.
M
- MVP (Minimal Viable Product)
- It is the absolute minimum requirement for a product to be released to the public (although that bar seems to keep getting lower in AAA development). In terms of rigging this means the minimum rig we need in order to set poses and to do basic things like walk-cycles. We will then build from this and add as many features as needed to improve our animation potential.
O
- Order of Rotation
- Unlike translation and scale where each component is independent of each other, Euler rotation is dependent on its order. XYZ, XZY, YXZ, YZX, ZXY, and ZYX are the orders that an Euler rotation can take. The first rotation is the child rotation that does not affect any of the other two whereas the last rotation is the grandparent rotation that affects the other two. This is why the middle rotation affects one and not the other and is prone to cause issues.
Most game engines do not permit order switching so it is best to get Euler issues solved with alternative methods.
Q
- Quaternion Rotation
- It is a 4 dimensional rotation method that is normally composed of a 3 dimensional axis direction and a 1 dimensional angle. It is very accurate but presents a challenge to visualize and to graph. Additionally it will always take the shortest path between two keys so in-between keys are often added for big rotations.
S
- Skeleton
- Normally consists of bones/joints and a skinned meshes. Rigs include skeletons, but skeletons are not rigs by themselves.
Additionally, when we talk about baking down animation, we usually refer to stripping away a rig and leaving only the skeleton with the end result animation.
- Skin
- (A.k.a.: Weighted Vertices) It is the result of applying weights on individual vertices that describes the blending of vertex transforms from multiple bones/joints.
Example: If you have 4 influences on a vertex, it means that 4 transforms need to be calculated from 4 bones/joints. The result is then blended based on the weights that have been applied.
- Sushi Rig
- Much like slicing up sushi rolls, we can slice a mesh into corresponding body parts and use them directly to produce a hierarchy and a rig. Some methods include transferring the chopped up mesh shape to a bone/joint.
T
- Tick
- Although a tick is the smallest measure of time in a 3D software (e.g.: Maya has 141,120,000 ticks per second) it is often referred to as a process that is on-going and constant (like a constraint). When a process is said to be happening “every tick” it is in fact being calculated over several ticks. In game engines, it is frowned upon to have something “tick all the time”.
- Transformation Matrix
- It is the fundamental building block of all 3D software. It can contain position, rotation, and scale data. All gizmos and transform components lead to a transform matrix.
Example: this is how Maya calculates an object’s transform:
matrix = SP * S * SH * SP * ST * RP * RA * R * RP * RT * T
where R = RX * RY * RZ (Note: order is determined by rotateOrder)
Matrix operations are also vital in rendering and are not limited to object transforms. It is how we go from an imaginary 3D space to a 2D pixel on a screen. Source: https://help.autodesk.com/cloudhelp/2022/JPN/Maya-Tech-Docs/Nodes/transform.html
Z
- Zeroed Out
- When an object is zeroed out, it will have zero values when matching its skin pose. Not only is this convenient to return to a skin pose, but it adds a layer of protection from gimbal lock while in the DCC. Once exported, the values will be flattened and it is up to the a game engine to manage these values. Some engines will construct its own zero values and covert all animation to be additive.