GraphicsDefs.pkg 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. $#include "GraphicsDefs.h"
  2. /// Rendering modes.
  3. enum RenderMode
  4. {
  5. RENDER_FORWARD = 0,
  6. RENDER_PREPASS,
  7. RENDER_DEFERRED
  8. };
  9. enum PrimitiveType
  10. {
  11. TRIANGLE_LIST = 0,
  12. LINE_LIST
  13. };
  14. enum GeometryType
  15. {
  16. GEOM_STATIC = 0,
  17. GEOM_SKINNED = 1,
  18. GEOM_INSTANCED = 2,
  19. GEOM_BILLBOARD = 3,
  20. GEOM_STATIC_NOINSTANCING = 4,
  21. MAX_GEOMETRYTYPES = 4,
  22. };
  23. enum BlendMode
  24. {
  25. BLEND_REPLACE = 0,
  26. BLEND_ADD,
  27. BLEND_MULTIPLY,
  28. BLEND_ALPHA,
  29. BLEND_ADDALPHA,
  30. BLEND_PREMULALPHA,
  31. BLEND_INVDESTALPHA,
  32. MAX_BLENDMODES
  33. };
  34. enum CompareMode
  35. {
  36. CMP_ALWAYS = 0,
  37. CMP_EQUAL,
  38. CMP_NOTEQUAL,
  39. CMP_LESS,
  40. CMP_LESSEQUAL,
  41. CMP_GREATER,
  42. CMP_GREATEREQUAL,
  43. MAX_COMPAREMODES
  44. };
  45. enum CullMode
  46. {
  47. CULL_NONE = 0,
  48. CULL_CCW,
  49. CULL_CW,
  50. MAX_CULLMODES
  51. };
  52. enum FillMode
  53. {
  54. FILL_SOLID = 0,
  55. FILL_WIREFRAME,
  56. FILL_POINT
  57. };
  58. enum StencilOp
  59. {
  60. OP_KEEP = 0,
  61. OP_ZERO,
  62. OP_REF,
  63. OP_INCR,
  64. OP_DECR
  65. };
  66. enum LockState
  67. {
  68. LOCK_NONE = 0,
  69. LOCK_HARDWARE,
  70. LOCK_SHADOW,
  71. LOCK_SCRATCH
  72. };
  73. enum VertexElement
  74. {
  75. ELEMENT_POSITION = 0,
  76. ELEMENT_NORMAL,
  77. ELEMENT_COLOR,
  78. ELEMENT_TEXCOORD1,
  79. ELEMENT_TEXCOORD2,
  80. ELEMENT_CUBETEXCOORD1,
  81. ELEMENT_CUBETEXCOORD2,
  82. ELEMENT_TANGENT,
  83. ELEMENT_BLENDWEIGHTS,
  84. ELEMENT_BLENDINDICES,
  85. ELEMENT_INSTANCEMATRIX1,
  86. ELEMENT_INSTANCEMATRIX2,
  87. ELEMENT_INSTANCEMATRIX3,
  88. MAX_VERTEX_ELEMENTS
  89. };
  90. enum TextureFilterMode
  91. {
  92. FILTER_NEAREST = 0,
  93. FILTER_BILINEAR,
  94. FILTER_TRILINEAR,
  95. FILTER_ANISOTROPIC,
  96. FILTER_DEFAULT,
  97. MAX_FILTERMODES
  98. };
  99. enum TextureAddressMode
  100. {
  101. ADDRESS_WRAP = 0,
  102. ADDRESS_MIRROR,
  103. ADDRESS_CLAMP,
  104. ADDRESS_BORDER,
  105. MAX_ADDRESSMODES
  106. };
  107. enum TextureCoordinate
  108. {
  109. COORD_U = 0,
  110. COORD_V,
  111. COORD_W,
  112. MAX_COORDS
  113. };
  114. enum TextureUsage
  115. {
  116. TEXTURE_STATIC = 0,
  117. TEXTURE_DYNAMIC,
  118. TEXTURE_RENDERTARGET,
  119. TEXTURE_DEPTHSTENCIL
  120. };
  121. enum CubeMapFace
  122. {
  123. FACE_POSITIVE_X = 0,
  124. FACE_NEGATIVE_X,
  125. FACE_POSITIVE_Y,
  126. FACE_NEGATIVE_Y,
  127. FACE_POSITIVE_Z,
  128. FACE_NEGATIVE_Z,
  129. MAX_CUBEMAP_FACES
  130. };
  131. enum RenderSurfaceUpdateMode
  132. {
  133. SURFACE_MANUALUPDATE = 0,
  134. SURFACE_UPDATEVISIBLE,
  135. SURFACE_UPDATEALWAYS
  136. };
  137. enum ShaderType
  138. {
  139. VS = 0,
  140. PS,
  141. };
  142. enum TextureUnit
  143. {
  144. TU_DIFFUSE = 0,
  145. TU_ALBEDOBUFFER = 0,
  146. TU_NORMAL = 1,
  147. TU_NORMALBUFFER = 1,
  148. TU_SPECULAR = 2,
  149. TU_EMISSIVE = 3,
  150. TU_ENVIRONMENT = 4,
  151. MAX_MATERIAL_TEXTURE_UNITS = 5,
  152. TU_LIGHTRAMP = 5,
  153. TU_LIGHTSHAPE = 6,
  154. TU_SHADOWMAP = 7,
  155. TU_FACESELECT = 8,
  156. TU_INDIRECTION = 9,
  157. TU_DEPTHBUFFER = 10,
  158. TU_LIGHTBUFFER = 11,
  159. MAX_TEXTURE_UNITS = 12
  160. };
  161. enum ShaderParameterGroup
  162. {
  163. SP_FRAME = 0,
  164. SP_CAMERA,
  165. SP_VIEWPORT,
  166. SP_ZONE,
  167. SP_LIGHT,
  168. SP_VERTEXLIGHTS,
  169. SP_MATERIAL,
  170. SP_OBJECTTRANSFORM,
  171. SP_OBJECTDATA,
  172. MAX_SHADER_PARAMETER_GROUPS
  173. };
  174. static const int QUALITY_LOW;
  175. static const int QUALITY_MEDIUM;
  176. static const int QUALITY_HIGH;
  177. static const int QUALITY_MAX;
  178. static const int SHADOWQUALITY_LOW_16BIT;
  179. static const int SHADOWQUALITY_LOW_24BIT;
  180. static const int SHADOWQUALITY_HIGH_16BIT;
  181. static const int SHADOWQUALITY_HIGH_24BIT;
  182. static const unsigned CLEAR_COLOR;
  183. static const unsigned CLEAR_DEPTH;
  184. static const unsigned CLEAR_STENCIL;