Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

187 lines
3.6 KiB

  1. #include "shaderlib/cshader.h"
  2. class skin_vs30_Static_Index
  3. {
  4. private:
  5. int m_nDECAL;
  6. #ifdef _DEBUG
  7. bool m_bDECAL;
  8. #endif
  9. public:
  10. void SetDECAL( int i )
  11. {
  12. Assert( i >= 0 && i <= 1 );
  13. m_nDECAL = i;
  14. #ifdef _DEBUG
  15. m_bDECAL = true;
  16. #endif
  17. }
  18. void SetDECAL( bool i )
  19. {
  20. m_nDECAL = i ? 1 : 0;
  21. #ifdef _DEBUG
  22. m_bDECAL = true;
  23. #endif
  24. }
  25. public:
  26. skin_vs30_Static_Index( )
  27. {
  28. #ifdef _DEBUG
  29. m_bDECAL = false;
  30. #endif // _DEBUG
  31. m_nDECAL = 0;
  32. }
  33. int GetIndex()
  34. {
  35. // Asserts to make sure that we aren't using any skipped combinations.
  36. // Asserts to make sure that we are setting all of the combination vars.
  37. #ifdef _DEBUG
  38. bool bAllStaticVarsDefined = m_bDECAL;
  39. Assert( bAllStaticVarsDefined );
  40. #endif // _DEBUG
  41. return ( 32 * m_nDECAL ) + 0;
  42. }
  43. };
  44. #define shaderStaticTest_skin_vs30 vsh_forgot_to_set_static_DECAL + 0
  45. class skin_vs30_Dynamic_Index
  46. {
  47. private:
  48. int m_nCOMPRESSED_VERTS;
  49. #ifdef _DEBUG
  50. bool m_bCOMPRESSED_VERTS;
  51. #endif
  52. public:
  53. void SetCOMPRESSED_VERTS( int i )
  54. {
  55. Assert( i >= 0 && i <= 1 );
  56. m_nCOMPRESSED_VERTS = i;
  57. #ifdef _DEBUG
  58. m_bCOMPRESSED_VERTS = true;
  59. #endif
  60. }
  61. void SetCOMPRESSED_VERTS( bool i )
  62. {
  63. m_nCOMPRESSED_VERTS = i ? 1 : 0;
  64. #ifdef _DEBUG
  65. m_bCOMPRESSED_VERTS = true;
  66. #endif
  67. }
  68. private:
  69. int m_nDOWATERFOG;
  70. #ifdef _DEBUG
  71. bool m_bDOWATERFOG;
  72. #endif
  73. public:
  74. void SetDOWATERFOG( int i )
  75. {
  76. Assert( i >= 0 && i <= 1 );
  77. m_nDOWATERFOG = i;
  78. #ifdef _DEBUG
  79. m_bDOWATERFOG = true;
  80. #endif
  81. }
  82. void SetDOWATERFOG( bool i )
  83. {
  84. m_nDOWATERFOG = i ? 1 : 0;
  85. #ifdef _DEBUG
  86. m_bDOWATERFOG = true;
  87. #endif
  88. }
  89. private:
  90. int m_nSKINNING;
  91. #ifdef _DEBUG
  92. bool m_bSKINNING;
  93. #endif
  94. public:
  95. void SetSKINNING( int i )
  96. {
  97. Assert( i >= 0 && i <= 1 );
  98. m_nSKINNING = i;
  99. #ifdef _DEBUG
  100. m_bSKINNING = true;
  101. #endif
  102. }
  103. void SetSKINNING( bool i )
  104. {
  105. m_nSKINNING = i ? 1 : 0;
  106. #ifdef _DEBUG
  107. m_bSKINNING = true;
  108. #endif
  109. }
  110. private:
  111. int m_nLIGHTING_PREVIEW;
  112. #ifdef _DEBUG
  113. bool m_bLIGHTING_PREVIEW;
  114. #endif
  115. public:
  116. void SetLIGHTING_PREVIEW( int i )
  117. {
  118. Assert( i >= 0 && i <= 1 );
  119. m_nLIGHTING_PREVIEW = i;
  120. #ifdef _DEBUG
  121. m_bLIGHTING_PREVIEW = true;
  122. #endif
  123. }
  124. void SetLIGHTING_PREVIEW( bool i )
  125. {
  126. m_nLIGHTING_PREVIEW = i ? 1 : 0;
  127. #ifdef _DEBUG
  128. m_bLIGHTING_PREVIEW = true;
  129. #endif
  130. }
  131. private:
  132. int m_nMORPHING;
  133. #ifdef _DEBUG
  134. bool m_bMORPHING;
  135. #endif
  136. public:
  137. void SetMORPHING( int i )
  138. {
  139. Assert( i >= 0 && i <= 1 );
  140. m_nMORPHING = i;
  141. #ifdef _DEBUG
  142. m_bMORPHING = true;
  143. #endif
  144. }
  145. void SetMORPHING( bool i )
  146. {
  147. m_nMORPHING = i ? 1 : 0;
  148. #ifdef _DEBUG
  149. m_bMORPHING = true;
  150. #endif
  151. }
  152. public:
  153. skin_vs30_Dynamic_Index()
  154. {
  155. #ifdef _DEBUG
  156. m_bCOMPRESSED_VERTS = false;
  157. #endif // _DEBUG
  158. m_nCOMPRESSED_VERTS = 0;
  159. #ifdef _DEBUG
  160. m_bDOWATERFOG = false;
  161. #endif // _DEBUG
  162. m_nDOWATERFOG = 0;
  163. #ifdef _DEBUG
  164. m_bSKINNING = false;
  165. #endif // _DEBUG
  166. m_nSKINNING = 0;
  167. #ifdef _DEBUG
  168. m_bLIGHTING_PREVIEW = false;
  169. #endif // _DEBUG
  170. m_nLIGHTING_PREVIEW = 0;
  171. #ifdef _DEBUG
  172. m_bMORPHING = false;
  173. #endif // _DEBUG
  174. m_nMORPHING = 0;
  175. }
  176. int GetIndex()
  177. {
  178. // Asserts to make sure that we aren't using any skipped combinations.
  179. // Asserts to make sure that we are setting all of the combination vars.
  180. #ifdef _DEBUG
  181. bool bAllDynamicVarsDefined = m_bCOMPRESSED_VERTS && m_bDOWATERFOG && m_bSKINNING && m_bLIGHTING_PREVIEW && m_bMORPHING;
  182. Assert( bAllDynamicVarsDefined );
  183. #endif // _DEBUG
  184. return ( 1 * m_nCOMPRESSED_VERTS ) + ( 2 * m_nDOWATERFOG ) + ( 4 * m_nSKINNING ) + ( 8 * m_nLIGHTING_PREVIEW ) + ( 16 * m_nMORPHING ) + 0;
  185. }
  186. };
  187. #define shaderDynamicTest_skin_vs30 vsh_forgot_to_set_dynamic_COMPRESSED_VERTS + vsh_forgot_to_set_dynamic_DOWATERFOG + vsh_forgot_to_set_dynamic_SKINNING + vsh_forgot_to_set_dynamic_LIGHTING_PREVIEW + vsh_forgot_to_set_dynamic_MORPHING + 0