Counter Strike : Global Offensive Source Code
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.

55 lines
1.7 KiB

  1. //====== Copyright � 1996-2006, Valve Corporation, All rights reserved. =======
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================
  6. #ifndef MULTIBLEND_DX9_HELPER_H
  7. #define MULTIBLEND_DX9_HELPER_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include <string.h>
  12. //-----------------------------------------------------------------------------
  13. // Forward declarations
  14. //-----------------------------------------------------------------------------
  15. class CBaseVSShader;
  16. class IMaterialVar;
  17. class IShaderDynamicAPI;
  18. class IShaderShadow;
  19. //-----------------------------------------------------------------------------
  20. // Init params/ init/ draw methods
  21. //-----------------------------------------------------------------------------
  22. struct Multiblend_DX9_Vars_t
  23. {
  24. Multiblend_DX9_Vars_t() { memset( this, 0xFF, sizeof( *this ) ); }
  25. int m_nBaseTextureTransform;
  26. int m_nBaseTexture;
  27. int m_nSpecTexture;
  28. int m_nBaseTexture2;
  29. int m_nSpecTexture2;
  30. int m_nBaseTexture3;
  31. int m_nSpecTexture3;
  32. int m_nBaseTexture4;
  33. int m_nSpecTexture4;
  34. int m_nRotation;
  35. int m_nRotation2;
  36. int m_nRotation3;
  37. int m_nRotation4;
  38. int m_nScale;
  39. int m_nScale2;
  40. int m_nScale3;
  41. int m_nScale4;
  42. };
  43. void InitParamsMultiblend_DX9( CBaseVSShader *pShader, IMaterialVar** params, const char *pMaterialName,
  44. Multiblend_DX9_Vars_t &info );
  45. void InitMultiblend_DX9( CBaseVSShader *pShader, IMaterialVar** params, Multiblend_DX9_Vars_t &info );
  46. void DrawMultiblend_DX9( CBaseVSShader *pShader, IMaterialVar** params, IShaderDynamicAPI *pShaderAPI,
  47. IShaderShadow* pShaderShadow, Multiblend_DX9_Vars_t &info, VertexCompressionType_t vertexCompression );
  48. #endif // MULTIBLEND_DX9_HELPER_H