Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

OgreCommon.h

Go to the documentation of this file.
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 
00215     enum _OgreExport ShadowTechnique
00216     {
00218         SHADOWTYPE_NONE,
00225         SHADOWTYPE_STENCIL_MODULATIVE,
00233         SHADOWTYPE_STENCIL_ADDITIVE,
00238         SHADOWTYPE_TEXTURE_MODULATIVE,
00245     };
00246 
00247 
00248     PixelFormat ilFormat2OgreFormat( int ImageFormat, int BytesPerPixel );
00249     std::pair< int, int > OgreFormat2ilFormat( PixelFormat format );
00250 
00251     typedef std::vector<Light*> LightList;
00252 }
00253 
00254 #endif

Copyright © 2002-2003 by The OGRE Team
Last modified Fri May 14 23:21:57 2004