| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- $#include "Graphics/GraphicsDefs.h"
- enum PrimitiveType
- {
- TRIANGLE_LIST = 0,
- LINE_LIST,
- POINT_LIST,
- TRIANGLE_STRIP,
- LINE_STRIP,
- TRIANGLE_FAN
- };
- enum GeometryType
- {
- GEOM_STATIC = 0,
- GEOM_SKINNED = 1,
- GEOM_INSTANCED = 2,
- GEOM_BILLBOARD = 3,
- GEOM_STATIC_NOINSTANCING = 4,
- MAX_GEOMETRYTYPES = 4,
- };
- enum BlendMode
- {
- BLEND_REPLACE = 0,
- BLEND_ADD,
- BLEND_MULTIPLY,
- BLEND_ALPHA,
- BLEND_ADDALPHA,
- BLEND_PREMULALPHA,
- BLEND_INVDESTALPHA,
- BLEND_SUBTRACT,
- BLEND_SUBTRACTALPHA,
- MAX_BLENDMODES
- };
- enum CompareMode
- {
- CMP_ALWAYS = 0,
- CMP_EQUAL,
- CMP_NOTEQUAL,
- CMP_LESS,
- CMP_LESSEQUAL,
- CMP_GREATER,
- CMP_GREATEREQUAL,
- MAX_COMPAREMODES
- };
- enum CullMode
- {
- CULL_NONE = 0,
- CULL_CCW,
- CULL_CW,
- MAX_CULLMODES
- };
- enum FillMode
- {
- FILL_SOLID = 0,
- FILL_WIREFRAME,
- FILL_POINT
- };
- enum StencilOp
- {
- OP_KEEP = 0,
- OP_ZERO,
- OP_REF,
- OP_INCR,
- OP_DECR
- };
- enum LockState
- {
- LOCK_NONE = 0,
- LOCK_HARDWARE,
- LOCK_SHADOW,
- LOCK_SCRATCH
- };
- enum LegacyVertexElement
- {
- ELEMENT_POSITION = 0,
- ELEMENT_NORMAL,
- ELEMENT_COLOR,
- ELEMENT_TEXCOORD1,
- ELEMENT_TEXCOORD2,
- ELEMENT_CUBETEXCOORD1,
- ELEMENT_CUBETEXCOORD2,
- ELEMENT_TANGENT,
- ELEMENT_BLENDWEIGHTS,
- ELEMENT_BLENDINDICES,
- ELEMENT_INSTANCEMATRIX1,
- ELEMENT_INSTANCEMATRIX2,
- ELEMENT_INSTANCEMATRIX3,
- ELEMENT_OBJECTINDEX,
- MAX_LEGACY_VERTEX_ELEMENTS
- };
- enum VertexElementType
- {
- TYPE_INT = 0,
- TYPE_FLOAT,
- TYPE_VECTOR2,
- TYPE_VECTOR3,
- TYPE_VECTOR4,
- TYPE_UBYTE4,
- TYPE_UBYTE4_NORM,
- MAX_VERTEX_ELEMENT_TYPES
- };
- enum VertexElementSemantic
- {
- SEM_POSITION = 0,
- SEM_NORMAL,
- SEM_BINORMAL,
- SEM_TANGENT,
- SEM_TEXCOORD,
- SEM_COLOR,
- SEM_BLENDWEIGHTS,
- SEM_BLENDINDICES,
- SEM_OBJECTINDEX,
- MAX_VERTEX_ELEMENT_SEMANTICS
- };
- enum TextureFilterMode
- {
- FILTER_NEAREST = 0,
- FILTER_BILINEAR,
- FILTER_TRILINEAR,
- FILTER_ANISOTROPIC,
- FILTER_NEAREST_ANISOTROPIC,
- FILTER_DEFAULT,
- MAX_FILTERMODES
- };
- enum TextureAddressMode
- {
- ADDRESS_WRAP = 0,
- ADDRESS_MIRROR,
- ADDRESS_CLAMP,
- ADDRESS_BORDER,
- MAX_ADDRESSMODES
- };
- enum TextureCoordinate
- {
- COORD_U = 0,
- COORD_V,
- COORD_W,
- MAX_COORDS
- };
- enum TextureUsage
- {
- TEXTURE_STATIC = 0,
- TEXTURE_DYNAMIC,
- TEXTURE_RENDERTARGET,
- TEXTURE_DEPTHSTENCIL
- };
- enum CubeMapFace
- {
- FACE_POSITIVE_X = 0,
- FACE_NEGATIVE_X,
- FACE_POSITIVE_Y,
- FACE_NEGATIVE_Y,
- FACE_POSITIVE_Z,
- FACE_NEGATIVE_Z,
- MAX_CUBEMAP_FACES
- };
- enum RenderSurfaceUpdateMode
- {
- SURFACE_MANUALUPDATE = 0,
- SURFACE_UPDATEVISIBLE,
- SURFACE_UPDATEALWAYS
- };
- enum ShaderType
- {
- VS = 0,
- PS,
- };
- // Texture unit numbering depends on graphics capability (mobile or desktop). Expose only the units we are sure of
- enum TextureUnit
- {
- TU_DIFFUSE = 0,
- TU_ALBEDOBUFFER = 0,
- TU_NORMAL = 1,
- TU_NORMALBUFFER = 1,
- TU_SPECULAR = 2,
- TU_EMISSIVE = 3,
- TU_ENVIRONMENT = 4,
- };
- enum FaceCameraMode
- {
- FC_NONE = 0,
- FC_ROTATE_XYZ,
- FC_ROTATE_Y,
- FC_LOOKAT_XYZ,
- FC_LOOKAT_Y,
- FC_LOOKAT_MIXED,
- FC_DIRECTION
- };
- /// Shadow type
- enum ShadowQuality
- {
- SHADOWQUALITY_SIMPLE_16BIT = 0,
- SHADOWQUALITY_SIMPLE_24BIT,
- SHADOWQUALITY_PCF_16BIT,
- SHADOWQUALITY_PCF_24BIT,
- SHADOWQUALITY_VSM,
- SHADOWQUALITY_BLUR_VSM
- };
- struct VertexElement
- {
- VertexElement();
- VertexElement(VertexElementType type, VertexElementSemantic semantic, unsigned char index = 0, bool perInstance = false);
- VertexElementType type_ @ type;
- VertexElementSemantic semantic_ @ semantic;
- unsigned char index_ @ index;
- bool perInstance_ @ perInstance;
- unsigned offset_ @ offset;
- };
- static const int QUALITY_LOW;
- static const int QUALITY_MEDIUM;
- static const int QUALITY_HIGH;
- static const int QUALITY_MAX;
- static const unsigned CLEAR_COLOR;
- static const unsigned CLEAR_DEPTH;
- static const unsigned CLEAR_STENCIL;
- static const unsigned MASK_NONE;
- static const unsigned MASK_POSITION;
- static const unsigned MASK_NORMAL;
- static const unsigned MASK_COLOR;
- static const unsigned MASK_TEXCOORD1;
- static const unsigned MASK_TEXCOORD2;
- static const unsigned MASK_CUBETEXCOORD1;
- static const unsigned MASK_CUBETEXCOORD2;
- static const unsigned MASK_TANGENT;
- static const unsigned MASK_BLENDWEIGHTS;
- static const unsigned MASK_BLENDINDICES;
- static const unsigned MASK_INSTANCEMATRIX1;
- static const unsigned MASK_INSTANCEMATRIX2;
- static const unsigned MASK_INSTANCEMATRIX3;
- static const unsigned MASK_OBJECTINDEX;
|