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_L16,
    00179         PF_A8,
    00181         PF_A4L4,
    00183         PF_L4A4,
    00185         PF_R5G6B5,
    00187         PF_B5G6R5,
    00189         PF_A4R4G4B4,
    00191         PF_B4G4R4A4,
    00193         PF_R8G8B8,
    00195         PF_B8G8R8,
    00197         PF_A8R8G8B8,
    00199         PF_B8G8R8A8,
    00201         PF_A2R10G10B10,
    00203         PF_B10G10R10A2,
    00205         PF_DXT1,
    00207         PF_DXT2,
    00209         PF_DXT3,
    00211         PF_DXT4,
    00213         PF_DXT5
    00214     };
    00215
    00217     enum ShadowTechnique
    00218     {
    00220         SHADOWTYPE_NONE,
    00227         SHADOWTYPE_STENCIL_MODULATIVE,
    00235         SHADOWTYPE_STENCIL_ADDITIVE,
    00240         SHADOWTYPE_TEXTURE_MODULATIVE,
    00247     };
    00248
    00249
    00250     PixelFormat ilFormat2OgreFormat( int ImageFormat, int BytesPerPixel );
    00251     std::pair< int, int > OgreFormat2ilFormat( PixelFormat format );
    00252
    00253     typedef std::vector<Light*> LightList;
    00254
    00255     typedef std::map<String, bool> UnaryOptionList;
    00256     typedef std::map<String, String> BinaryOptionList;
    00268     int _OgreExport findCommandLineOpts(int numargs, char** argv, UnaryOptionList& unaryOptList,
    00269         BinaryOptionList& binOptList);
    00270
    00271 }
    00272
    00273 #endif

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:48:17 2004