00001 /* 00002 ----------------------------------------------------------------------------- 00003 This source file is part of OGRE 00004 (Object-oriented Graphics Rendering Engine) 00005 For the latest info, see http://ogre.sourceforge.net/ 00006 00007 Copyright © 2000-2002 The OGRE Team 00008 Also see acknowledgements in Readme.html 00009 00010 This program is free software; you can redistribute it and/or modify it under 00011 the terms of the GNU Lesser General Public License as published by the Free Software 00012 Foundation; either version 2 of the License, or (at your option) any later 00013 version. 00014 00015 This program is distributed in the hope that it will be useful, but WITHOUT 00016 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 00017 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. 00018 00019 You should have received a copy of the GNU Lesser General Public License along with 00020 this program; if not, write to the Free Software Foundation, Inc., 59 Temple 00021 Place - Suite 330, Boston, MA 02111-1307, USA, or go to 00022 http://www.gnu.org/copyleft/lesser.txt. 00023 ----------------------------------------------------------------------------- 00024 */ 00025 #ifndef __SkeletonFileFormat_H__ 00026 #define __SkeletonFileFormat_H__ 00027 00028 #include "OgrePrerequisites.h" 00029 00030 namespace Ogre { 00031 00046 enum SkeletonChunkID { 00047 SKELETON_HEADER = 0x1000, 00048 // char* version : Version number check 00049 SKELETON_BONE = 0x2000, 00050 // Repeating section defining each bone in the system. 00051 // Bones are assigned indexes automatically based on their order of declaration 00052 // starting with 0. 00053 00054 // char* name : name of the bone 00055 // unsigned short handle : handle of the bone, should be contiguous & start at 0 00056 // Vector3 position : position of this bone relative to parent 00057 // Quaternion orientation : orientation of this bone relative to parent 00058 00059 SKELETON_BONE_PARENT = 0x3000, 00060 // Record of the parent of a single bone, used to build the node tree 00061 // Repeating section, listed in Bone Index order, one per Bone 00062 00063 // unsigned short handle : child bone 00064 // unsigned short parentHandle : parent bone 00065 00066 SKELETON_ANIMATION = 0x4000, 00067 // A single animation for this skeleton 00068 00069 // char* name : Name of the animation 00070 // Real length : Length of the animation in seconds 00071 00072 SKELETON_ANIMATION_TRACK = 0x4100, 00073 // A single animation track (relates to a single bone) 00074 // Repeating section (within SKELETON_ANIMATION) 00075 00076 // unsigned short boneIndex : Index of bone to apply to 00077 00078 SKELETON_ANIMATION_TRACK_KEYFRAME = 0x4110, 00079 // A single keyframe within the track 00080 // Repeating section 00081 00082 // Real time : The time position (seconds) 00083 // Quaternion rotate : Rotation to apply at this keyframe 00084 // Vector3 translate : Translation to apply at this keyframe 00085 }; 00086 00087 } // namespace 00088 00089 00090 #endif
Copyright © 2002 by The OGRE Team