The Skeleton Panel displays the structure of your compound or animated asset's rig, while the viewport displays models linked to each part of the rig, called a node, and allows you to change the position and rotation of each model/node to pose your rig and create motion keyframes in animations.
What is a Rig?
Arig is a combination of multiple models to shape a compound asset (static) or an animated asset and define how the models may move in relation to each other.
The relationships are set up in a hierarchy of parent and child nodes in the Skeleton Panel, where movement of the parent node determines the movement of its child nodes. A child node can also be a parent of other nodes, making it possible to rig and animate complex entities.
Learn more about how models are broken down and rigged together
Node Menus
First, let's look at how the skeleton panel displays node menus.
Expand and Collapse
Examples:
The World Node is a Parent of the Control Node.
The Root Node
The Skeleton Panel for a new project includes a root node named 'World'.
Create Child Node
Select Hierarchy
Import Hierarchy (VXR, VOX)
Avoid Root Motion
The "World" Node is the Root. It is recommended to create a child node that will control all of the nodes you'll add to your asset (name it something like "Control"). Then, build your rig on the control node.
AVOID ANIMATING THE ROOT NODE
The Sandbox's game engine manages an asset's motion. This is why adding motion to the root node of an asset to simulate its movement leads to an unnatural result when the asset is used in the game world.
Example:
In VoxEdit, an asset's walking animation should appear to be walking while staying in one location. When this asset is used in the game engine, the behaviour system will move the asset based on the player's use of controls, which will look natural with the animation.
GAMING HISTORY: SPRITES
2D games used sprites composed of multiple still images replaced in sequence at a certain speed to animate the actions of a player, enemies, objects, etc. The game's code determined the location of sprites.
The Sandbox's assets and game engine are similar, except you can build a 3D rig of voxel models with fluid motion in your animations.
Other Nodes
Create Child Node
Duplicate Node (CTRL + D)
Rename Node (CTRL + R)
Select Hierarchy (SHIFT + A)
Export Hierarchy
Import Hierarchy (VXR and VOX formats)
Delete Node (Delete)
Parent and Child Relationships
Child Node
A child node is attached to a parent node within the skeleton hierarchy. This empty node controls the location of any attached model relative to the position of the parent node.
Bounding Box
When you create a new node, it will display as an empty bounding box of 32x32x32 (if bounding boxes view enabled) until a model is linked. Then the bounding box will match the model linked to the node.
Motion
If the position of the parent node is adjusted, the child node will follow. However, the child node can be moved independently of the Parent.
The exception is when Inverse Kinematics is togged on in the Top Bar, where the child node can be positioned and its parent (as well as its parent, and so on) will follow, which helps when it's more natural to position the child node at the end of chain of influence created from a hierarchy with multiple levels.
3D Movement Example
When a Child node is moved or rotated in the viewport, the Child node moves independently and the Parent node stays in the same location.
When a Parent node is moved or rotated in the Viewport, the Child node will follow to maintain its relationship with the Parent.
Example: Moving a Parent Node and Its Children
Example: Rotating a Parent Node and Its Children
Parent and Child Node Uses
Creating parent and child relationships between nodes can be useful for:
keeping nodes organised in groups for easier management of complex rigs with multiple main parts, such as a bookshelf and the items placed on it
building smooth, curved shapes using multiple models, such as a wheel or arch
creating motion where some nodes naturally follow others, such as the parts of an arm
View Relationships
The image on the left shows the asset's appearance, with models linked to the rig's nodes.
The image on the right shows the asset's skeleton, with red lines that are thick at a connection with a Parent node and thin at a connection with a Child node.
PARENT/CHILD SIMILARITIES IN VOXEDIT & GAME MAKER
The Parent and Child relationships defined in the Skeleton Panel of VoxEdit are similar to the Parent and Child relationships of Objects defined in Game Maker's Hierarchy Panel. In both software, the Parent's motion determines the Child's motion.
Managing Nodes
Add a Child Node
Click on the three dots button to the left of the node you wish to add a child node to and choose "Create Child Node" from the menu.
There will then be a prompt asking for the "Name of new Node." Type your preferred name and press the ENTER key.
You can use this same process on the newly created node to give it a child node of its own. This creates a chain of influence where the newly created child will treat the previously created child node as its parent, but will also follow the influence of the parent of its parent node.
Try to create and use a clear naming convention for new nodes and models.
Duplicate Node
Duplicating a node can be helpful for repetitive parts of your entity's design. This action will add a copy of the same node and all of its sub-nodes in the same hierarchal arrangement to the rig, and its location will be identical to the node it copied (it will also be a child of the original's parent). This copy will include the same linked models.
Click on the three dots button to the left of the node you wish to duplicate and choose "Duplicate Node" from the menu.
Rename Node
Click on the three dots button to the left of the node you wish to rename and choose "Rename Node" from the menu.
A window will appear allowing you to rename. Avoid using special characters, and remember every node must have a unique name. Develop a system for naming nodes based on the structure for complex entities so it's easy to find what you need.
Deleting a Node
Any node (excluding the Root Node) can be deleted by clicking on the three dots next to the nodes name and then choosing "Delete Node" in the menu.
Be aware that all the sub-nodes further down the chain of influence treat that node as a parent, so they will also be deleted. This removes the models linked to them from the Viewport, but they are still located in your Library so you can continue to use them in your entity.
Change Parent and Child Relationships
Click a Node in the Hierarchy that will be a Child Node and then drag and drop it on topof another Node in the list that will be its Parent. A bracket will be seen next to the Child Node and the relationship will be visible in the Skeleton Panel:
Parent Node - the left most object
Child Node - indented to the right under its parent
If the node you choose to drag and drop has child nodes, they will move with it.
To reverse this, drag and drop the Child Node back below a different Node as its Parent.
A Child Node may also be a Parent of other Nodes. It will still keep the same child bracket, and its Child Object will be indented to the right with a bracket.
Link & Unlink Models
Add or Link a Model
A model can be quickly and easily added to a node in the skeleton hierarchy by dragging and dropping a .VXM model file from the Library onto an existing node.
Remove or Unlink a Model
You can remove the current .VXM model file from a node by left-clicking the three dots to the left of the nodes name in the hierarchy and navigating to 'Unlink VXM from Node'.
Managing Hierarchies of Nodes
Select Hierarchy
Click on the three dots button to the left of the node you wish to select and choose "Select Hierarchy" from the menu. You'll see all sub-nodes in the hierarchy selected in the Viewport for editing.
Export Hierarchy
Exporting a hierarchy can save time when you will use a hierarchy of nodes, its models, and their motion keyframes again in another project.
Click on the three dots button to the left of the node you wish to export and choose "Export Hierarchy" from the menu. The window will prompt you to name it and save it in your folders so you can reuse it later.
Import Hierarchy
Importing a hierarchy can save time when you will use a hierarchy of nodes, its models, and their motion keyframes that you've saved again in the current project. It's how templates are "unlocked."
Example Use Case:
You've created an excellent animation with multiple models for a flickering candle flame and want to reuse it on other entities with similar flames.
Click on the three dots button to the left of the node you wish to import to and choose "Import Hierarchy" from the menu. The window will prompt you to select a saved hierarchy to import.
Building a Rig
To create a rig, first you must first decide the shape of your whole entity.
Then you will break it down into smaller parts, or models, based on the necessary structure, whether it is static or animated.
To move these parts, nodes must be added in the Skeleton Panel in a hierarchy of parent and child relationships.
Nodes are sometimes called the "bones" of the "skeleton."
Models are linked to each node with a simple drag and drop from the Library to the node. Then they are positioned by selecting tools in the Top Bar and adjusting in the Viewport. Be sure the pivot point for each model is positioned correctly for the expected motion.
Example:
The pivot point on the lid of a chest should be on the back where the hinges would be.
You can create multiple animation states in the Timeline panel, which are poses of your rig's nodes/models. For each animation state, you can add motion keyframes to make the nodes/models move.
The entity below is one of many VoxEdit Templates, broken down into its models. The joints on a real animal help visualise all of its parts, which will become separate models. The joints also help visualise where the pivot point on each model should be, knowing how a model should move and rotate.
To simulate the movements of a dog or wolf, an entity would need parts such as:
BODY CENTRE
Torso
Pelvis
HEAD
Neck
Head
TAIL
Tail01
Tail02
Tail03
FRONT LEGS
FrontLeg01
FrontLeg02
FrontFoot
BACK LEGS
BackLeg01
BackLeg02
BackLeg03
BackFoot
The torso and pelvis are the center of the animal's body, so they should be parents of all other nodes. The Head and Front Legs are attached at the Torso and the Tail and Back Legs are attached at the Pelvis.
Except for the Body Centre group above, think of each of the other groups above as a chain of child nodes (and remember you'll need a chain for each front and back back leg, as well as the tail). There are a lot of nodes to add for this rig, but breaking it down like this makes it easier to get started.
The Skeleton Panel shows the hierarchy of nodes, and the Viewport shows the models linked to the nodes. In the template example below, you can see a cascading chain of child nodes for each leg, the tail, and the head and neck.
In the image below, the skeleton is toggled on in the Viewport so you can see how the models are all connected as a hierarchy in the rig.
PRIOR KNOWLEDGE TO BUILD A RIG
Visit the Beginners page for activities which gradually develop your skills:
NEXT STEP - ANIMATION
Click the plus sign to expand a Node and see all of its Child nodes. Child nodes will be indented with a bracket to the left. To collapse a Node, click the minus sign . This hides them so it's easier to scroll through the Skeleton Panel.
The Control Node is a Parent of the Base, Part 1, and Part 2 nodes. The sign indicates this Node is expanded.
The Control Node is collapsed. The plus sign indicates it has Child nodes.
Click the button to the left on the 'World' Node to open a menu with options to:
Clicking the button on any other Node you create reveals a full list of options to:
Using the button in the Top Bar, the rig's skeleton visibility can be toggled on/off.
introduces adjusting VoxEdit's camera to view your project and using basic editing tools in paint mode, which are also used in the Modeler.
guides you to create and modify a model in the Modeler.
introduces the Animator. You'll learn to locate a node in the Animator Skeleton Panel, open its linked model seamlessly in the Modeler and edit, save, and return to the rig in the Animator.
is the main activity you'll need to rig a static compound entity (no motion). The activity includes adding and removing nodes in the Skeleton Panel, adding a model in the Library, linking models to nodes, and positioning nodes.
continues the example from activity 4 and explains how to create multiple animations and motion keyframes for an animated entity.