User Tools

Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
modeleditor:skeleton [2012-03-22 11:24]
Carsten created
modeleditor:skeleton [2016-06-21 11:34] (current)
Line 1: Line 1:
 ====== Skeleton ====== ====== Skeleton ======
 +
 +The skeleton forms the basis of a model.
 +Technically,​ it is built from a hierarchy of "​coordinate systems":​
 +Starting at the root, each coordinate system is defined in the coordinate system of its parent.
 +Model artists use these coordinate systems to fix the points (weights and vertices) that eventually form the meshes of the model.
 +
 +{{ http://​www.cafu.de/​images/​gallery/​cawe-model-editor/​model-editor-6.png?​252}}
 +If we compare the skeleton of a model to the skeleton of the human body, the "​coordinate systems"​ closely correspond to "​joints":​ the coordinate origin is in the center of the joint, and the coordinate axes correspond to the bones that extend from the joint.
 +In this analogy, a "​bone"​ is the line segment between a coordinate origin and the coordinate origin of its parent system.
 +
 +You can inspect the skeleton in 3D view in the [[:​modeleditor:​scenesetup]]:​
 +  * set **Show Mesh** to "​no"​
 +  * set **Show Skeleton** to "​yes"​
 +
  
 ===== The joints hierarchy ===== ===== The joints hierarchy =====
  
 {{ :​modeleditor:​joints-hierarchy.png?​|}} {{ :​modeleditor:​joints-hierarchy.png?​|}}
 +The **Skeleton / Joints Hierarchy** pane shows all the joints in the skeleton, hierarchically arranged. Items in the hierarchy tree can be expanded or collapsed with the nearby symbols.
 +
 +A single click on a joint selects it, a double click opens the **Joint Inspector** pane as well.
 +
 +Pressing the **F2** key or a single-click on an already selected joint allows you to rename the joint in place. ​
 <​clear>​ <​clear>​
  
Line 10: Line 29:
  
 {{ :​modeleditor:​joints-hierarchy-context-menu.png?​|}} {{ :​modeleditor:​joints-hierarchy-context-menu.png?​|}}
 +An RMB click in the **Skeleton / Joints Hierarchy** pane opens the context menu:
 +  * **Inspect/​Edit** opens the **Joint Inspector** pane,
 +  * **Rename** allows to rename the joint,
 +  * **Expand all** expands all items in the joints hierarchy tree.
 <​clear>​ <​clear>​
  
Line 16: Line 39:
  
 {{ :​modeleditor:​joint-inspector.png?​|}} {{ :​modeleditor:​joint-inspector.png?​|}}
 +The **Joint Inspector** pane shows the details of the currently selected joint.
 +
 +==== General ====
 +
 +The General section shows the name of the joint (it's another option to rename it),
 +and the index number of the parent joint.
 +
 +The parent index number is a technical detail that cannot be changed.
 +You need it only if you [[:​modeleditor:​modelfiles#​cmdl_model_files|edit the model file]] in a text editor or work with the Cafu [[http://​api.cafu.de/​c++/​classCafuModelT.html|model C++ data structures]].
 +
 +==== Bind pose ====
 +
 +This section shows the position, orientation and scale of the joint (i.e., the coordinate system).
 +
 +Note that the details presented here only affect the //bind pose// of the model. The //bind pose// is the default pose of the model: it is used whenever no animation sequences are loaded or none are actively used.
 +
 +That is, the **Joint Inspector** is great for manipulating __the individual bones of static models__.
 +
 +It is however useless for animated models, because technically,​ each animation sequence brings its own set of (animated) joints that cannot be manipulated individually. If you want to do that, refer to [[:​modeleditor:​transform]] instead.
 +
 +The currently selected joint of the bind pose is described by these parameters:
 +
 +  * **Pos** defines the position of the coordinate origin relative to the parent system.
 +  * **Qtr** defines the first three values of the quaternion that describes the orientation of the coordinate system. You should //not// attempt to manipulate these values if you don't know what quaternions are and why it only shows three instead of four values.
 +  * **Scale** expresses the scale (or relative length) of the three coordinate axes.
 <​clear>​ <​clear>​
  
modeleditor/skeleton.1332411866.txt.gz ยท Last modified: 2013-01-07 12:07 (external edit)