00001 /*
00002 -----------------------------------------------------------------------------
00003 This source file is part of OGRE
00004 (Object-oriented Graphics Rendering Engine)
00005 For the latest info, see http://www.ogre3d.org/
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 __Common_H__
00026 #define __Common_H__
00027 // Common stuff
00028
00029 #include <utility>
00030
00031 namespace Ogre {
00032
00033 enum ResourceType
00034 {
00036 RESTYPE_ALL,
00038 RESTYPE_TEXTURES,
00040 RESTYPE_MODELS
00041 };
00042
00045 enum CompareFunction
00046 {
00047 CMPF_ALWAYS_FAIL,
00048 CMPF_ALWAYS_PASS,
00049 CMPF_LESS,
00050 CMPF_LESS_EQUAL,
00051 CMPF_EQUAL,
00052 CMPF_NOT_EQUAL,
00053 CMPF_GREATER_EQUAL,
00054 CMPF_GREATER
00055 };
00056
00059 enum TextureFilterOptions
00060 {
00062 TFO_NONE,
00064 TFO_BILINEAR,
00066 TFO_TRILINEAR,
00068 TFO_ANISOTROPIC
00069 };
00070
00071 enum FilterType
00072 {
00074 FT_MIN,
00076 FT_MAG,
00078 FT_MIP
00079 };
00081 enum FilterOptions
00082 {
00084 FO_NONE,
00086 FO_POINT,
00088 FO_LINEAR,
00090 FO_ANISOTROPIC
00091 };
00092
00093
00094
00096 enum ShadeOptions
00097 {
00098 SO_FLAT,
00099 SO_GOURAUD,
00100 SO_PHONG
00101 };
00102
00104 enum FogMode
00105 {
00107 FOG_NONE,
00109 FOG_EXP,
00111 FOG_EXP2,
00113 FOG_LINEAR
00114 };
00115
00118 enum CullingMode
00119 {
00121 CULL_NONE = 1,
00123 CULL_CLOCKWISE = 2,
00125 CULL_ANTICLOCKWISE = 3
00126 };
00127
00133 enum ManualCullingMode
00134 {
00136 MANUAL_CULL_NONE = 1,
00138 MANUAL_CULL_BACK = 2,
00140 MANUAL_CULL_FRONT = 3
00141 };
00142
00144 enum WaveformType
00145 {
00147 WFT_SINE,
00149 WFT_TRIANGLE,
00151 WFT_SQUARE,
00153 WFT_SAWTOOTH,
00155 WFT_INVERSE_SAWTOOTH
00156 };
00157
00159 enum SceneDetailLevel
00160 {
00162 SDL_POINTS = 1,
00164 SDL_WIREFRAME = 2,
00166 SDL_SOLID = 3
00167 };
00168
00170 enum PixelFormat
00171 {
00173 PF_UNKNOWN,
00175 PF_L8,
00177 PF_A8,
00179 PF_A4L4,
00181 PF_L4A4,
00183 PF_R5G6B5,
00185 PF_B5G6R5,
00187 PF_A4R4G4B4,
00189 PF_B4G4R4A4,
00191 PF_R8G8B8,
00193 PF_B8G8R8,
00195 PF_A8R8G8B8,
00197 PF_B8G8R8A8,
00199 PF_A2R10G10B10,
00201 PF_B10G10R10A2,
00203 PF_DXT1,
00205 PF_DXT2,
00207 PF_DXT3,
00209 PF_DXT4,
00211 PF_DXT5
00212 };
00213
00214 PixelFormat ilFormat2OgreFormat( int ImageFormat, int BytesPerPixel );
00215 std::pair< int, int > OgreFormat2ilFormat( PixelFormat format );
00216
00217 typedef std::vector<Light*> LightList;
00218 }
00219
00220 #endif
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:10:05 2004