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 __OOF_H__ 00026 #define __OOF_H__ 00027 00028 #include "OgrePrerequisites.h" 00029 00030 namespace Ogre { 00031 00042 enum OofChunkIDs { 00043 OOF_HEADER = 0x1000, 00044 // ENTIRE HEADER ALWAYS UNCOMPRESSED 00045 // bool compression 00046 // unsigned short numMaterials 00047 // unsigned short numObjects 00048 OOF_MATERIAL = 0x2000, 00049 // char* name (\n terminated) 00050 // AMBIENT 00051 // float r, g, b 00052 // DIFFUSE 00053 // float r, g, b 00054 // SPECULAR 00055 // float r, g, b 00056 // SHININESS 00057 // float val; 00058 OOF_TEXTURE_LAYER = 0x2200, // optional, repeat per layer 00059 // char* name (\n terminated) 00060 // TODO - scale, offset, effects 00061 OOF_OBJECT = 0x3000, 00062 // char* name (\n terminated) 00063 // unsigned short numSharedVertices 00064 OOF_VSHAREDPOSITIONS = 0x3100, // present only if numSharedVertices > 0 00065 // float* (x,y,z) * numVertices 00066 OOF_VSHAREDNORMALS = 0x3200, // optional, present only if numSharedVertices > 0 00067 // float* (x,y,z) * numVertices 00068 OOF_VSHAREDTEXCOORDS = 0x3300, // optional, present only if numSharedVertices > 0 00069 // float* (u,v) * numVertices 00070 OOF_VSHAREDCOLOURS = 0x3400, // optional, present only if numSharedVertices > 0 00071 // float* (r,g,b) * numVertices 00072 OOF_MATERIAL_GROUP = 0x3500, // optional, present only if numSharedVertices > 0 00073 // unsigned short materialIndex 00074 // unsigned short numFaces 00075 // unsigned short* faceVertexIndices ((v1, v2, v3) * numFaces) 00076 // unsigned short numDedicatedVertices 00077 OOF_VPOSITIONS = 0x3510, //present only if numDedicatedVertices > 0 00078 // float* (x,y,z) * numVertices 00079 OOF_VNORMALS = 0x3520, // optional, present only if numDedicatedVertices > 0 00080 // float* (x,y,z) * numVertices 00081 OOF_VTEXCOORDS = 0x3530, // optional, present only if numDedicatedVertices > 0 00082 // float* (u,v) * numVertices 00083 OOF_VCOLOURS = 0x3540, // optional, present only if numDedicatedVertices > 0 00084 // float* (r,g,b) * numVertices 00085 }; 00086 00087 } // namespace 00088 00089 00090 #endif
Copyright © 2002 by The OGRE Team