123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- // Copyright (C) 2002-2012 Nikolaus Gebhardt
- // This file is part of the "Irrlicht Engine".
- // For conditions of distribution and use, see copyright notice in irrlicht.h
- #ifndef __E_MATERIAL_FLAGS_H_INCLUDED__
- #define __E_MATERIAL_FLAGS_H_INCLUDED__
- namespace irr
- {
- namespace video
- {
- //! Material flags
- enum E_MATERIAL_FLAG
- {
- //! Draw as wireframe or filled triangles? Default: false
- EMF_WIREFRAME = 0x1,
- //! Draw as point cloud or filled triangles? Default: false
- EMF_POINTCLOUD = 0x2,
- //! Flat or Gouraud shading? Default: true
- EMF_GOURAUD_SHADING = 0x4,
- //! Will this material be lighted? Default: true
- EMF_LIGHTING = 0x8,
- //! Is the ZBuffer enabled? Default: true
- EMF_ZBUFFER = 0x10,
- //! May be written to the zbuffer or is it readonly. Default: true
- /** This flag is ignored, if the material type is a transparent type. */
- EMF_ZWRITE_ENABLE = 0x20,
- //! Is backface culling enabled? Default: true
- EMF_BACK_FACE_CULLING = 0x40,
- //! Is frontface culling enabled? Default: false
- /** Overrides EMF_BACK_FACE_CULLING if both are enabled. */
- EMF_FRONT_FACE_CULLING = 0x80,
- //! Is bilinear filtering enabled? Default: true
- EMF_BILINEAR_FILTER = 0x100,
- //! Is trilinear filtering enabled? Default: false
- /** If the trilinear filter flag is enabled,
- the bilinear filtering flag is ignored. */
- EMF_TRILINEAR_FILTER = 0x200,
- //! Is anisotropic filtering? Default: false
- /** In Irrlicht you can use anisotropic texture filtering in
- conjunction with bilinear or trilinear texture filtering
- to improve rendering results. Primitives will look less
- blurry with this flag switched on. */
- EMF_ANISOTROPIC_FILTER = 0x400,
- //! Is fog enabled? Default: false
- EMF_FOG_ENABLE = 0x800,
- //! Normalizes normals. Default: false
- /** You can enable this if you need to scale a dynamic lighted
- model. Usually, its normals will get scaled too then and it
- will get darker. If you enable the EMF_NORMALIZE_NORMALS flag,
- the normals will be normalized again, and the model will look
- as bright as it should. */
- EMF_NORMALIZE_NORMALS = 0x1000,
- //! Access to all layers texture wrap settings. Overwrites separate layer settings.
- EMF_TEXTURE_WRAP = 0x2000,
- //! AntiAliasing mode
- EMF_ANTI_ALIASING = 0x4000,
- //! ColorMask bits, for enabling the color planes
- EMF_COLOR_MASK = 0x8000,
- //! ColorMaterial enum for vertex color interpretation
- EMF_COLOR_MATERIAL = 0x10000,
- //! Flag for enabling/disabling mipmap usage
- EMF_USE_MIP_MAPS = 0x20000,
- //! Flag for blend operation
- EMF_BLEND_OPERATION = 0x40000,
- //! Flag for polygon offset
- EMF_POLYGON_OFFSET = 0x80000,
- //! MaterialType override
- EMF_MATERIAL_TYPE = 0x100000,
- //! Texture
- EMF_TEXTURE0 = 0x200000,
- //! Texture
- EMF_TEXTURE1 = 0x400000,
- //! Texture
- EMF_TEXTURE2 = 0x800000,
- };
- } // end namespace video
- } // end namespace irr
- #endif // __E_MATERIAL_FLAGS_H_INCLUDED__
|