|  | overview |  | wiki |  | api reference |  | download

- Main Page
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Functions Variables Typedefs Enumerations Enumerator
Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions
gameplay::Joint Class Reference

`#include <Joint.h>`

Inheritance diagram for gameplay::Joint:

List of all members.

## Classes

struct | SkinReference

## Public Member Functions

Node::Type | getType () const
Scene * | getScene () const
const Matrix & | getInverseBindPose () const

## Protected Member Functions

| Joint (const char *id)
virtual | ~Joint ()
virtual Node * | cloneSingleNode (NodeCloneContext &context) const
void | setInverseBindPose (const Matrix &m)
void | updateJointMatrix (const Matrix &bindShape, Vector4 *matrixPalette)
void | transformChanged ()

## Static Protected Member Functions

static Joint * | create (const char *id)

## Detailed Description

Defines a joint node.

This represent a joint in a skeleton that is hierarchially part of a MeshSkin. This allows the vertices in the mesh to be blended and animated using the sum of the blend weight that must add up to 1.0.

## Constructor & Destructor Documentation

gameplay::Joint::Joint | ( | const char * | id | ) | `[protected]`

Constructor.

virtual gameplay::Joint::~Joint | ( |  | ) | `[protected, virtual]`

Destructor.

## Member Function Documentation

virtual Node* gameplay::Joint::cloneSingleNode | ( | NodeCloneContext & | context | ) | const`[protected, virtual]`

Clones a single node and its data but not its children. This method returns a node pointer but actually creates a Joint.

Parameters:

  context | The clone context.

Returns:
  Pointer to the newly created joint.

Reimplemented from gameplay::Node.

static Joint* gameplay::Joint::create | ( | const char * | id | ) | `[static, protected]`

Creates a new joint with the given id.

Parameters:

  id | ID string.

Returns:
  Newly created joint.

Reimplemented from gameplay::Node.

const Matrix& gameplay::Joint::getInverseBindPose | ( |  | ) | const

Returns the inverse bind pose matrix for this joint.

Returns:
  Inverse bind pose matrix.

Scene* gameplay::Joint::getScene | ( |  | ) | const`[virtual]`

See also:
  Node::getScene()

Reimplemented from gameplay::Node.

Node::Type gameplay::Joint::getType | ( |  | ) | const`[virtual]`

See also:
  Node::getType()

Reimplemented from gameplay::Node.

void gameplay::Joint::setInverseBindPose | ( | const Matrix & | m | ) | `[protected]`

Sets the inverse bind pose matrix.

Parameters:

  m | Matrix representing the inverse bind pose for this Joint.

void gameplay::Joint::transformChanged | ( |  | ) | `[protected, virtual]`

Called when this Joint's transform changes.

Reimplemented from gameplay::Node.

void gameplay::Joint::updateJointMatrix | ( | const Matrix & | bindShape,
|  | Vector4 * | matrixPalette
| ) |  | `[protected]`

Updates the joint matrix.

Parameters:

  bindShape | The bind shape matrix.
  matrixPalette | The matrix palette to update.

All Classes Functions Variables Typedefs Enumerations Enumerator