OGRE 2.1
Object-Oriented Graphics Rendering Engine
|
Namespaces | |
namespace | Ogre::v1 |
Classes | |
class | Ogre::AnimableObject |
Defines an interface to classes which have one or more AnimableValue instances to expose. More... | |
class | Ogre::AnimableValue |
Defines an object property which is animable, i.e. More... | |
class | Ogre::Bone |
Class representing a Bone in the join hierarchy of a skeleton. More... | |
struct | Ogre::BySkeletonDef |
class | Ogre::SkeletonAnimation |
Represents the instance of a Skeletal animation based on its definition. More... | |
struct | Ogre::SkeletonAnimManager |
This is how the Skeleton system works in 2.0: There is one BoneMemoryManager per skeleton. More... | |
class | Ogre::SkeletonInstance |
Instance of a Skeleton, main external interface for retrieving bone positions and applying animations. More... | |
class | Ogre::SkeletonManager |
Handles the management of skeleton resources. More... | |
class | Ogre::TagPoint |
TagPoints are like SceneNodes, that can be children of a Bone. More... | |
class | Ogre::v1::Animation |
An animation sequence. More... | |
class | Ogre::v1::AnimationContainer |
An animation container interface, which allows generic access to sibling animations. More... | |
class | Ogre::v1::AnimationState |
Represents the state of an animation and the weight of its influence. More... | |
class | Ogre::v1::AnimationStateControllerValue |
ControllerValue wrapper class for AnimationState. More... | |
class | Ogre::v1::AnimationStateSet |
Class encapsulating a set of AnimationState objects. More... | |
class | Ogre::v1::AnimationTrack |
A 'track' in an animation sequence, i.e. More... | |
class | Ogre::v1::KeyFrame |
A key frame in an animation sequence defined by an AnimationTrack. More... | |
struct | Ogre::v1::LinkedSkeletonAnimationSource |
Link to another skeleton to share animations. More... | |
class | Ogre::v1::NodeAnimationTrack |
Specialised AnimationTrack for dealing with node transforms. More... | |
class | Ogre::v1::NumericAnimationTrack |
Specialised AnimationTrack for dealing with generic animable values. More... | |
class | Ogre::v1::NumericKeyFrame |
Specialised KeyFrame which stores any numeric value. More... | |
class | Ogre::v1::OldBone |
A bone in a skeleton. More... | |
class | Ogre::v1::OldNodeAnimationTrack |
Specialised AnimationTrack for dealing with node transforms. More... | |
class | Ogre::v1::OldSkeletonManager |
Handles the management of skeleton resources. More... | |
class | Ogre::v1::Pose |
A pose is a linked set of vertex offsets applying to one set of vertex data. More... | |
class | Ogre::v1::Skeleton |
A collection of OldBone objects used to animate a skinned mesh. More... | |
class | Ogre::v1::SkeletonSerializer |
Class for serialising skeleton data to/from an OGRE .skeleton file. More... | |
class | Ogre::v1::TagPoint |
A tagged point on a skeleton, which can be used to attach entities to on specific other entities. More... | |
class | Ogre::v1::TimeIndex |
Time index object used to search keyframe at the given position. More... | |
class | Ogre::v1::TransformKeyFrame |
Specialised KeyFrame which stores a full transform. More... | |
class | Ogre::v1::VertexAnimationTrack |
Specialised AnimationTrack for dealing with changing vertex position information. More... | |
class | Ogre::v1::VertexMorphKeyFrame |
Specialised KeyFrame which stores absolute vertex positions for a complete buffer, designed to be interpolated with other keys in the same track. More... | |
class | Ogre::v1::VertexPoseKeyFrame |
Specialised KeyFrame which references a Mesh::Pose at a certain influence level, which stores offsets for a subset of the vertices in a buffer to provide a blendable pose. More... | |
struct | Ogre::VertexBoneAssignment |
Records the assignment of a single vertex to a single bone with the corresponding weight. More... | |
Macros | |
#define | OGRE_MAX_NUM_BONES 256 |
Enumerations | |
enum | Ogre::v1::SkeletonAnimationBlendMode { Ogre::v1::ANIMBLEND_AVERAGE = 0 , Ogre::v1::ANIMBLEND_CUMULATIVE = 1 } |
enum | Ogre::SkeletonChunkID { Ogre::SKELETON_HEADER = 0x1000 , Ogre::SKELETON_BLENDMODE = 0x1010 , Ogre::SKELETON_BONE = 0x2000 , Ogre::SKELETON_BONE_PARENT = 0x3000 , Ogre::SKELETON_ANIMATION = 0x4000 , Ogre::SKELETON_ANIMATION_BASEINFO = 0x4010 , Ogre::SKELETON_ANIMATION_TRACK = 0x4100 , Ogre::SKELETON_ANIMATION_TRACK_KEYFRAME = 0x4110 , Ogre::SKELETON_ANIMATION_LINK = 0x5000 } |
Definition of the OGRE .skeleton file format. More... | |
enum | Ogre::v1::VertexAnimationType { Ogre::v1::VAT_NONE = 0 , Ogre::v1::VAT_MORPH = 1 , Ogre::v1::VAT_POSE = 2 } |
Type of vertex animation. More... | |
#define OGRE_MAX_NUM_BONES 256 |
typedef vector<Pose*>::type Ogre::v1::PoseList |
Definition of the OGRE .skeleton file format.
.skeleton files are binary files (for read efficiency at runtime) and are arranged into chunks of data, very like 3D Studio's format. A chunk always consists of: unsigned short CHUNK_ID : one of the following chunk ids identifying the chunk unsigned long LENGTH : length of the chunk in bytes, including this header void* DATA : the data, which may contain other sub-chunks (various data types)
A .skeleton file contains both the definition of the Skeleton object and the animations it contains. It contains only a single skeleton but can contain multiple animations.
Type of vertex animation.
Vertex animation comes in 2 types, morph and pose. The reason for the 2 types is that we have 2 different potential goals - to encapsulate a complete, flowing morph animation with multiple keyframes (a typical animation, but implemented by having snapshots of the vertex data at each keyframe), or to represent a single pose change, for example a facial expression. Whilst both could in fact be implemented using the same system, we choose to separate them since the requirements and limitations of each are quite different.
Enumerator | |
---|---|
VAT_NONE | No animation. |
VAT_MORPH | Morph animation is made up of many interpolated snapshot keyframes. |
VAT_POSE | Pose animation is made up of a single delta pose keyframe. |
|
inline |
|
inline |
|
inline |