aboutsummaryrefslogtreecommitdiff
path: root/mp/src/materialsystem/stdshaders/debugluxel.cpp
diff options
context:
space:
mode:
authorMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
committerMichael Sartain <[email protected]>2014-10-02 08:25:55 -0700
commit55ed12f8d1eb6887d348be03aee5573d44177ffb (patch)
tree3686f7ca78c780cd9a3d367b79a9d9250c1be7c0 /mp/src/materialsystem/stdshaders/debugluxel.cpp
parent* Added support for Visual C++ 2013 Express to VPC (diff)
downloadsource-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.tar.xz
source-sdk-2013-55ed12f8d1eb6887d348be03aee5573d44177ffb.zip
Updated the SDK with the latest code from the TF and HL2 branches.
Diffstat (limited to 'mp/src/materialsystem/stdshaders/debugluxel.cpp')
-rw-r--r--mp/src/materialsystem/stdshaders/debugluxel.cpp121
1 files changed, 39 insertions, 82 deletions
diff --git a/mp/src/materialsystem/stdshaders/debugluxel.cpp b/mp/src/materialsystem/stdshaders/debugluxel.cpp
index b3135fcb..328dfb6b 100644
--- a/mp/src/materialsystem/stdshaders/debugluxel.cpp
+++ b/mp/src/materialsystem/stdshaders/debugluxel.cpp
@@ -1,4 +1,4 @@
-//========= Copyright Valve Corporation, All rights reserved. ============//
+//===== Copyright (c) 1996-2005, Valve Corporation, All rights reserved. ======//
//
// Purpose:
//
@@ -6,18 +6,11 @@
// $NoKeywords: $
//===========================================================================//
-#include "shaderlib/cshader.h"
-
-#define USE_NEW_SHADER //Updating assembly shaders to fxc, this is for A/B testing.
-
-#ifdef USE_NEW_SHADER
-
-#include "unlitgeneric_vs20.inc"
-#include "unlitgeneric_ps20.inc"
-#include "unlitgeneric_ps20b.inc"
-
-#endif
+#include "shaderlib/CShader.h"
+#include "debugluxel_ps20b.inc"
+#include "debugluxel_ps20.inc"
+#include "debugluxel_vs20.inc"
// memdbgon must be the last include file in a .cpp file!!!
@@ -34,107 +27,71 @@ BEGIN_SHADER_FLAGS( DebugLuxels, "Help for DebugLuxels", SHADER_NOT_EDITABLE )
SET_FLAGS( MATERIAL_VAR_NO_DEBUG_OVERRIDE );
SET_FLAGS2( MATERIAL_VAR2_LIGHTING_LIGHTMAP );
-#ifdef USE_NEW_SHADER
if( g_pHardwareConfig->GetDXSupportLevel() >= 90 )
{
SET_FLAGS2( MATERIAL_VAR2_SUPPORTS_HW_SKINNING );
}
-#endif
-}
-
-SHADER_INIT
-{
- LoadTexture( BASETEXTURE );
-}
+ }
-SHADER_DRAW
-{
- SHADOW_STATE
+ SHADER_INIT
{
- pShaderShadow->EnableTexture( SHADER_SAMPLER0, true );
-
- if (IS_FLAG_SET(MATERIAL_VAR_TRANSLUCENT))
- {
- pShaderShadow->EnableBlending( true );
- pShaderShadow->BlendFunc( SHADER_BLEND_SRC_ALPHA, SHADER_BLEND_ONE_MINUS_SRC_ALPHA );
- }
+ LoadTexture( BASETEXTURE );
+ }
- if (IS_FLAG_SET(MATERIAL_VAR_VERTEXCOLOR))
- pShaderShadow->DrawFlags( SHADER_DRAW_POSITION | SHADER_DRAW_COLOR | SHADER_DRAW_LIGHTMAP_TEXCOORD0 );
- else
- pShaderShadow->DrawFlags( SHADER_DRAW_POSITION | SHADER_DRAW_LIGHTMAP_TEXCOORD0 );
-#ifdef USE_NEW_SHADER
- if( g_pHardwareConfig->GetDXSupportLevel() >= 90 )
+ SHADER_DRAW
+ {
+ SHADOW_STATE
{
- bool bVertexColor = IS_FLAG_SET(MATERIAL_VAR_VERTEXCOLOR);
+ pShaderShadow->EnableTexture( SHADER_SAMPLER0, true );
- DECLARE_STATIC_VERTEX_SHADER( unlitgeneric_vs20 );
- SET_STATIC_VERTEX_SHADER_COMBO( VERTEXCOLOR, bVertexColor ? 1 : 0 );
- SET_STATIC_VERTEX_SHADER( unlitgeneric_vs20 );
+ DECLARE_STATIC_VERTEX_SHADER( debugluxel_vs20 );
+ SET_STATIC_VERTEX_SHADER( debugluxel_vs20 );
if( g_pHardwareConfig->SupportsPixelShaders_2_b() )
{
- DECLARE_STATIC_PIXEL_SHADER( unlitgeneric_ps20b );
- SET_STATIC_PIXEL_SHADER( unlitgeneric_ps20b );
+ DECLARE_STATIC_PIXEL_SHADER( debugluxel_ps20b );
+ SET_STATIC_PIXEL_SHADER( debugluxel_ps20b );
}
else
{
- DECLARE_STATIC_PIXEL_SHADER( unlitgeneric_ps20 );
- SET_STATIC_PIXEL_SHADER( unlitgeneric_ps20 );
+ DECLARE_STATIC_PIXEL_SHADER( debugluxel_ps20 );
+ SET_STATIC_PIXEL_SHADER( debugluxel_ps20 );
}
- }
-#endif
- }
- DYNAMIC_STATE
- {
- BindTexture( SHADER_SAMPLER0, BASETEXTURE, FRAME );
- int texCoordScaleX = 1, texCoordScaleY = 1;
- if (!params[NOSCALE]->GetIntValue())
- {
- pShaderAPI->GetLightmapDimensions( &texCoordScaleX, &texCoordScaleY );
+ SetDefaultBlendingShadowState( BASETEXTURE );
+ DisableFog();
+ pShaderShadow->VertexShaderVertexFormat( VERTEX_POSITION, 2, NULL, 0 );
}
-
-#ifdef USE_NEW_SHADER
- if( g_pHardwareConfig->GetDXSupportLevel() >= 90 )
+ DYNAMIC_STATE
{
- float vVertexColor[4] = { IS_FLAG_SET(MATERIAL_VAR_VERTEXCOLOR) ? 1.0f : 0.0f, 0.0f, 0.0f, 0.0f };
- pShaderAPI->SetVertexShaderConstant( VERTEX_SHADER_SHADER_SPECIFIC_CONST_6, vVertexColor, 1 );
+ BindTexture( SHADER_SAMPLER0, BASETEXTURE, FRAME );
- DECLARE_DYNAMIC_VERTEX_SHADER( unlitgeneric_vs20 );
- SET_DYNAMIC_VERTEX_SHADER_COMBO( DOWATERFOG, pShaderAPI->GetSceneFogMode() == MATERIAL_FOG_LINEAR_BELOW_FOG_Z );
- SET_DYNAMIC_VERTEX_SHADER_COMBO( SKINNING, pShaderAPI->GetCurrentNumBones() > 0 );
- SET_DYNAMIC_VERTEX_SHADER_COMBO( COMPRESSED_VERTS, (int)vertexCompression );
- SET_DYNAMIC_VERTEX_SHADER( unlitgeneric_vs20 );
+ int texCoordScaleX = 1, texCoordScaleY = 1;
+ if (!params[NOSCALE]->GetIntValue())
+ {
+ pShaderAPI->GetLightmapDimensions( &texCoordScaleX, &texCoordScaleY );
+ }
+
+ DECLARE_DYNAMIC_VERTEX_SHADER( debugluxel_vs20 );
+ SET_DYNAMIC_VERTEX_SHADER( debugluxel_vs20 );
if( g_pHardwareConfig->SupportsPixelShaders_2_b() )
{
- DECLARE_DYNAMIC_PIXEL_SHADER( unlitgeneric_ps20b );
- SET_DYNAMIC_PIXEL_SHADER( unlitgeneric_ps20b );
+ DECLARE_DYNAMIC_PIXEL_SHADER( debugluxel_ps20b );
+ SET_DYNAMIC_PIXEL_SHADER( debugluxel_ps20b );
}
else
{
- DECLARE_DYNAMIC_PIXEL_SHADER( unlitgeneric_ps20 );
- SET_DYNAMIC_PIXEL_SHADER( unlitgeneric_ps20 );
+ DECLARE_DYNAMIC_PIXEL_SHADER( debugluxel_ps20 );
+ SET_DYNAMIC_PIXEL_SHADER( debugluxel_ps20 );
}
//texture scale transform
Vector4D transformation[2];
- transformation[0].Init( (float)texCoordScaleX, 0.0f, 0.0f, 0.0f );
- transformation[1].Init( 0.0f, (float)texCoordScaleY, 0.0f, 0.0f );
+ transformation[0].Init( texCoordScaleX, 0.0f, 0.0f, 0.0f );
+ transformation[1].Init( 0.0f, texCoordScaleY, 0.0f, 0.0f );
s_pShaderAPI->SetVertexShaderConstant( VERTEX_SHADER_SHADER_SPECIFIC_CONST_0, transformation[0].Base(), 2 );
}
- else
-#endif
- {
- if (!params[NOSCALE]->GetIntValue())
- {
- pShaderAPI->MatrixMode( MATERIAL_TEXTURE0 );
- pShaderAPI->LoadIdentity( );
- pShaderAPI->ScaleXY( texCoordScaleX, texCoordScaleY );
- }
- }
+ Draw();
}
- Draw();
-}
END_SHADER