View on GitHub

ezEngine Documentation

The documentation for ezEngine

Joint Attachment Component

The joint attachment component is used to expose the animated position of a bone, such that you can attach objects there.

In the video above a joint override component was used to expose the position of the right hand as a game object. This was then used as the parent object for a gun object.

Component Properties

How To Use

Whenever an animated mesh receives a new pose, it passes that pose on to all interested components that are attached to the same object or any child object. The joint attachment component listens to this message and positions its owner game object at the relative position of the selected bone.

To attach an object to a certain bone, follow these steps:

  1. Create an empty game object as a child of the animated mesh.
  2. Add a joint attachment component to it.
  3. Set its JointName property to the desired bone name. You can look up the bone name on the skeleton asset that is used by the animated mesh asset on the animated mesh component.
  4. Add the desired object or component to the joint attachment object.

    Joint Attachment Setup

  5. The local transform of the attachment object will be overwritten by the component when it receives an animation pose. Thus setting any values here doesn’t have any useful effect during simulation. To see where your attachment ends up, you need to simulate the scene and an animation has to actively play on the animated mesh.
  6. While the scene is simulating, you can use the position and rotation offset properties to tweak the exact location of the joint attachment.

Note:

The position and rotation offset properties are useful for minor tweaks. The same can also be achieved with another child object. However, it can be difficult to position an attachment perfectly and it might turn out that the attachment position needs tweaking depending on the animation as well. In such cases it is better to add a dedicated bone to the skeleton instead, such that you have full control over the attachment in your modeling tool.

See Also