aboutsummaryrefslogtreecommitdiff
path: root/sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h
diff options
context:
space:
mode:
authorJoe Ludwig <[email protected]>2013-12-23 14:58:45 -0800
committerJoe Ludwig <[email protected]>2013-12-23 15:00:03 -0800
commit7309a5f13f63fdcc7b1e090f6c176113a9d95061 (patch)
treead65c7fbe46a3c70bdc0a1426e88247ce1b0d7f5 /sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h
parentMerge pull request #182 from ardneran/master (diff)
downloadsource-sdk-2013-7309a5f13f63fdcc7b1e090f6c176113a9d95061.tar.xz
source-sdk-2013-7309a5f13f63fdcc7b1e090f6c176113a9d95061.zip
Added many shader source files
This should include the latest version of every shader that was in the 2007 SDK. It also includes a smattering of debug shaders, both VR distortion shaders, and other assorted shaders that will hopefully be useful. None of these new files are included in the game shader DLL project. If you need to modify one of these shaders for use in your mod you will need to rename it so that you don't collide with the version of that shader that lives in stdshader_dx9.dll.
Diffstat (limited to 'sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h')
-rw-r--r--sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h144
1 files changed, 144 insertions, 0 deletions
diff --git a/sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h b/sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h
new file mode 100644
index 00000000..0b5b02e4
--- /dev/null
+++ b/sp/src/materialsystem/stdshaders/vertexlitgeneric_dx9_helper.h
@@ -0,0 +1,144 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================
+
+#ifndef VERTEXLITGENERIC_DX9_HELPER_H
+#define VERTEXLITGENERIC_DX9_HELPER_H
+
+#include <string.h>
+
+
+//-----------------------------------------------------------------------------
+// Forward declarations
+//-----------------------------------------------------------------------------
+class CBaseVSShader;
+class IMaterialVar;
+class IShaderDynamicAPI;
+class IShaderShadow;
+
+
+//-----------------------------------------------------------------------------
+// Init params/ init/ draw methods
+//-----------------------------------------------------------------------------
+struct VertexLitGeneric_DX9_Vars_t
+{
+ VertexLitGeneric_DX9_Vars_t() { memset( this, 0xFF, sizeof(*this) ); }
+
+ int m_nBaseTexture;
+ int m_nWrinkle;
+ int m_nStretch;
+ int m_nBaseTextureFrame;
+ int m_nBaseTextureTransform;
+ int m_nAlbedo;
+ int m_nDetail;
+ int m_nDetailFrame;
+ int m_nDetailScale;
+ int m_nEnvmap;
+ int m_nEnvmapFrame;
+ int m_nEnvmapMask;
+ int m_nEnvmapMaskFrame;
+ int m_nEnvmapMaskTransform;
+ int m_nEnvmapTint;
+ int m_nBumpmap;
+ int m_nNormalWrinkle;
+ int m_nNormalStretch;
+ int m_nBumpFrame;
+ int m_nBumpTransform;
+ int m_nEnvmapContrast;
+ int m_nEnvmapSaturation;
+ int m_nAlphaTestReference;
+ int m_nVertexAlphaTest;
+ int m_nFlashlightNoLambert;
+ int m_nFlashlightTexture;
+ int m_nFlashlightTextureFrame;
+
+ int m_nSelfIllumTint;
+ int m_nSelfIllumFresnel;
+ int m_nSelfIllumFresnelMinMaxExp;
+
+ int m_nPhongExponent;
+ int m_nPhongTint;
+ int m_nPhongAlbedoTint;
+ int m_nPhongExponentTexture;
+ int m_nDiffuseWarpTexture;
+ int m_nPhongWarpTexture;
+ int m_nPhongBoost;
+ int m_nPhongFresnelRanges;
+ int m_nSelfIllumEnvMapMask_Alpha;
+ int m_nAmbientOnly;
+ int m_nHDRColorScale;
+ int m_nPhong;
+ int m_nBaseMapAlphaPhongMask;
+ int m_nEnvmapFresnel;
+
+ int m_nDetailTextureCombineMode;
+ int m_nDetailTextureBlendFactor;
+
+ // Rim lighting parameters
+ int m_nRimLight;
+ int m_nRimLightPower;
+ int m_nRimLightBoost;
+ int m_nRimMask;
+
+ int m_nSeamlessScale;
+ int m_nSeamlessBase;
+ int m_nSeamlessDetail;
+
+ // distance coded line art parameters
+ int m_nDistanceAlpha;
+ int m_nDistanceAlphaFromDetail;
+
+ int m_nSoftEdges;
+ int m_nEdgeSoftnessStart;
+ int m_nEdgeSoftnessEnd;
+ int m_nScaleEdgeSoftnessBasedOnScreenRes;
+
+ int m_nGlow;
+ int m_nGlowColor;
+ int m_nGlowAlpha;
+ int m_nGlowStart;
+ int m_nGlowEnd;
+ int m_nGlowX;
+ int m_nGlowY;
+ int m_nOutline;
+ int m_nOutlineColor;
+ int m_nOutlineAlpha;
+ int m_nOutlineStart0;
+ int m_nOutlineStart1;
+ int m_nOutlineEnd0;
+ int m_nOutlineEnd1;
+ int m_nScaleOutlineSoftnessBasedOnScreenRes;
+
+ int m_nSeparateDetailUVs;
+ int m_nDetailTextureTransform;
+
+ int m_nLinearWrite;
+ int m_nGammaColorRead;
+
+ int m_nDetailTint;
+ int m_nInvertPhongMask;
+
+ int m_nDepthBlend;
+ int m_nDepthBlendScale;
+
+ int m_nSelfIllumMask;
+ int m_nReceiveFlashlight;
+
+ int m_nBlendTintByBaseAlpha;
+
+ int m_nTintReplacesBaseColor;
+
+};
+
+void InitParamsVertexLitGeneric_DX9( CBaseVSShader *pShader, IMaterialVar** params, const char *pMaterialName, bool bVertexLitGeneric, VertexLitGeneric_DX9_Vars_t &info );
+void InitVertexLitGeneric_DX9( CBaseVSShader *pShader, IMaterialVar** params, bool bVertexLitGeneric, VertexLitGeneric_DX9_Vars_t &info );
+void DrawVertexLitGeneric_DX9( CBaseVSShader *pShader, IMaterialVar** params, IShaderDynamicAPI *pShaderAPI, IShaderShadow* pShaderShadow,
+ bool bVertexLitGeneric, VertexLitGeneric_DX9_Vars_t &info, VertexCompressionType_t vertexCompression,
+ CBasePerMaterialContextData **pContextDataPtr
+ );
+
+
+#endif // VERTEXLITGENERIC_DX9_HELPER_H