diff options
| author | FluorescentCIAAfricanAmerican <[email protected]> | 2020-04-22 12:56:21 -0400 |
|---|---|---|
| committer | FluorescentCIAAfricanAmerican <[email protected]> | 2020-04-22 12:56:21 -0400 |
| commit | 3bf9df6b2785fa6d951086978a3e66f49427166a (patch) | |
| tree | 2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /materialsystem/stdshaders/debugsoftwarevertexshader.cpp | |
| download | archived-source-engine-2018-hl2-src-3bf9df6b2785fa6d951086978a3e66f49427166a.tar.xz archived-source-engine-2018-hl2-src-3bf9df6b2785fa6d951086978a3e66f49427166a.zip | |
Diffstat (limited to 'materialsystem/stdshaders/debugsoftwarevertexshader.cpp')
| -rw-r--r-- | materialsystem/stdshaders/debugsoftwarevertexshader.cpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/materialsystem/stdshaders/debugsoftwarevertexshader.cpp b/materialsystem/stdshaders/debugsoftwarevertexshader.cpp new file mode 100644 index 0000000..be7cedf --- /dev/null +++ b/materialsystem/stdshaders/debugsoftwarevertexshader.cpp @@ -0,0 +1,56 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +//=============================================================================// + +#include "shaderlib/cshader.h" + +// memdbgon must be the last include file in a .cpp file!!! +#include "tier0/memdbgon.h" + +SOFTWARE_VERTEX_SHADER( myHappyLittleSoftwareVertexShader ) +{ + float t = pShaderAPI->CurrentTime(); + for( int i = 0; i < meshBuilder.NumVertices(); i++ ) + { + const float *pPos = meshBuilder.Position(); + meshBuilder.Position3f( pPos[0], pPos[1], pPos[2] + 10.0f * sin( t + pPos[0] ) ); + meshBuilder.AdvanceVertex(); + } +} + +FORWARD_DECLARE_SOFTWARE_VERTEX_SHADER( myHappyLittleSoftwareVertexShader ); + +BEGIN_SHADER_FLAGS( DebugSoftwareVertexShader, "blah", SHADER_NOT_EDITABLE ) + BEGIN_SHADER_PARAMS + SHADER_PARAM_OVERRIDE( BASETEXTURE, SHADER_PARAM_TYPE_TEXTURE, "shadertest/basetexture", "unused", SHADER_PARAM_NOT_EDITABLE ) + SHADER_PARAM_OVERRIDE( FRAME, SHADER_PARAM_TYPE_INTEGER, "0", "unused", SHADER_PARAM_NOT_EDITABLE ) + SHADER_PARAM_OVERRIDE( BASETEXTURETRANSFORM, SHADER_PARAM_TYPE_MATRIX, "center .5 .5 scale 1 1 rotate 0 translate 0 0", "unused", SHADER_PARAM_NOT_EDITABLE ) + SHADER_PARAM_OVERRIDE( COLOR, SHADER_PARAM_TYPE_COLOR, "{255 255 255}", "unused", SHADER_PARAM_NOT_EDITABLE ) + SHADER_PARAM_OVERRIDE( ALPHA, SHADER_PARAM_TYPE_FLOAT, "1.0", "unused", SHADER_PARAM_NOT_EDITABLE ) + END_SHADER_PARAMS + + SHADER_INIT + { + if( g_pHardwareConfig->SupportsVertexAndPixelShaders() ) + { + USE_SOFTWARE_VERTEX_SHADER( myHappyLittleSoftwareVertexShader ); + } + else + { + USE_SOFTWARE_VERTEX_SHADER( myHappyLittleSoftwareVertexShader ); + } + } + SHADER_DRAW + { + SHADOW_STATE + { + } + DYNAMIC_STATE + { + } + Draw(); + } +END_SHADER |