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.

87 lines
1.8 KiB

  1. #include "shaderlib/cshader.h"
  2. class depthwrite_ps20_Static_Index
  3. {
  4. private:
  5. int m_nCOLOR_DEPTH;
  6. #ifdef _DEBUG
  7. bool m_bCOLOR_DEPTH;
  8. #endif
  9. public:
  10. void SetCOLOR_DEPTH( int i )
  11. {
  12. Assert( i >= 0 && i <= 1 );
  13. m_nCOLOR_DEPTH = i;
  14. #ifdef _DEBUG
  15. m_bCOLOR_DEPTH = true;
  16. #endif
  17. }
  18. void SetCOLOR_DEPTH( bool i )
  19. {
  20. m_nCOLOR_DEPTH = i ? 1 : 0;
  21. #ifdef _DEBUG
  22. m_bCOLOR_DEPTH = true;
  23. #endif
  24. }
  25. public:
  26. depthwrite_ps20_Static_Index( )
  27. {
  28. #ifdef _DEBUG
  29. m_bCOLOR_DEPTH = false;
  30. #endif // _DEBUG
  31. m_nCOLOR_DEPTH = 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_bCOLOR_DEPTH;
  39. Assert( bAllStaticVarsDefined );
  40. #endif // _DEBUG
  41. return ( 2 * m_nCOLOR_DEPTH ) + 0;
  42. }
  43. };
  44. #define shaderStaticTest_depthwrite_ps20 psh_forgot_to_set_static_COLOR_DEPTH + 0
  45. class depthwrite_ps20_Dynamic_Index
  46. {
  47. private:
  48. int m_nALPHACLIP;
  49. #ifdef _DEBUG
  50. bool m_bALPHACLIP;
  51. #endif
  52. public:
  53. void SetALPHACLIP( int i )
  54. {
  55. Assert( i >= 0 && i <= 1 );
  56. m_nALPHACLIP = i;
  57. #ifdef _DEBUG
  58. m_bALPHACLIP = true;
  59. #endif
  60. }
  61. void SetALPHACLIP( bool i )
  62. {
  63. m_nALPHACLIP = i ? 1 : 0;
  64. #ifdef _DEBUG
  65. m_bALPHACLIP = true;
  66. #endif
  67. }
  68. public:
  69. depthwrite_ps20_Dynamic_Index()
  70. {
  71. #ifdef _DEBUG
  72. m_bALPHACLIP = false;
  73. #endif // _DEBUG
  74. m_nALPHACLIP = 0;
  75. }
  76. int GetIndex()
  77. {
  78. // Asserts to make sure that we aren't using any skipped combinations.
  79. // Asserts to make sure that we are setting all of the combination vars.
  80. #ifdef _DEBUG
  81. bool bAllDynamicVarsDefined = m_bALPHACLIP;
  82. Assert( bAllDynamicVarsDefined );
  83. #endif // _DEBUG
  84. return ( 1 * m_nALPHACLIP ) + 0;
  85. }
  86. };
  87. #define shaderDynamicTest_depthwrite_ps20 psh_forgot_to_set_dynamic_ALPHACLIP + 0