From c9d2db101c7dde87998d9b8835c161218ebb88a5 Mon Sep 17 00:00:00 2001 From: Evgeny Akabenko Date: Sat, 30 May 2026 17:45:37 +0300 Subject: [PATCH 1/3] Added `$frame` params for `screenspace_general` --- .../stdshaders/screenspace_general.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/materialsystem/stdshaders/screenspace_general.cpp b/src/materialsystem/stdshaders/screenspace_general.cpp index ece1b9d58e1..29aec599874 100644 --- a/src/materialsystem/stdshaders/screenspace_general.cpp +++ b/src/materialsystem/stdshaders/screenspace_general.cpp @@ -43,6 +43,10 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", SHADER_PARAM( LINEARWRITE,SHADER_PARAM_TYPE_INTEGER,"0","") SHADER_PARAM( X360APPCHOOSER, SHADER_PARAM_TYPE_INTEGER, "0", "Needed for movies in 360 launcher" ) SHADER_PARAM( COPYALPHA, SHADER_PARAM_TYPE_INTEGER, "0", "") + SHADER_PARAM( FRAME, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $basetexture") + SHADER_PARAM( FRAME1, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture1") + SHADER_PARAM( FRAME2, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture2") + SHADER_PARAM( FRAME3, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture3") END_SHADER_PARAMS SHADER_INIT @@ -242,7 +246,7 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", // Using c4-c7 to store the pixel sizes of each texture if (params[BASETEXTURE]->IsDefined()) { - BindTexture( SHADER_SAMPLER0, BASETEXTURE, -1 ); + BindTexture( SHADER_SAMPLER0, BASETEXTURE, FRAME ); ITexture *pTarget = params[ BASETEXTURE ]->GetTextureValue(); float vPixelSize[4] = { 1.0f / pTarget->GetActualWidth(), 1.0f / pTarget->GetActualHeight(), 0.0f, 0.0f }; @@ -251,7 +255,7 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", if (params[TEXTURE1]->IsDefined()) { - BindTexture( SHADER_SAMPLER1, TEXTURE1, -1 ); + BindTexture( SHADER_SAMPLER1, TEXTURE1, FRAME1 ); ITexture *pTarget = params[ TEXTURE1 ]->GetTextureValue(); float vPixelSize[4] = { 1.0f / pTarget->GetActualWidth(), 1.0f / pTarget->GetActualHeight(), 0.0f, 0.0f }; @@ -260,7 +264,7 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", if (params[TEXTURE2]->IsDefined()) { - BindTexture( SHADER_SAMPLER2, TEXTURE2, -1 ); + BindTexture( SHADER_SAMPLER2, TEXTURE2, FRAME2 ); ITexture *pTarget = params[ TEXTURE2 ]->GetTextureValue(); float vPixelSize[4] = { 1.0f / pTarget->GetActualWidth(), 1.0f / pTarget->GetActualHeight(), 0.0f, 0.0f }; @@ -269,7 +273,7 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", if (params[TEXTURE3]->IsDefined()) { - BindTexture( SHADER_SAMPLER3, TEXTURE3, -1 ); + BindTexture( SHADER_SAMPLER3, TEXTURE3, FRAME3 ); ITexture *pTarget = params[ TEXTURE3 ]->GetTextureValue(); float vPixelSize[4] = { 1.0f / pTarget->GetActualWidth(), 1.0f / pTarget->GetActualHeight(), 0.0f, 0.0f }; From 635540f11ce741454d3789dde03de7fcb7789b76 Mon Sep 17 00:00:00 2001 From: Evgeny Akabenko Date: Mon, 1 Jun 2026 09:28:06 +0300 Subject: [PATCH 2/3] Minor changes --- src/materialsystem/stdshaders/screenspace_general.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/materialsystem/stdshaders/screenspace_general.cpp b/src/materialsystem/stdshaders/screenspace_general.cpp index 29aec599874..192feee182a 100644 --- a/src/materialsystem/stdshaders/screenspace_general.cpp +++ b/src/materialsystem/stdshaders/screenspace_general.cpp @@ -43,10 +43,10 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", SHADER_PARAM( LINEARWRITE,SHADER_PARAM_TYPE_INTEGER,"0","") SHADER_PARAM( X360APPCHOOSER, SHADER_PARAM_TYPE_INTEGER, "0", "Needed for movies in 360 launcher" ) SHADER_PARAM( COPYALPHA, SHADER_PARAM_TYPE_INTEGER, "0", "") - SHADER_PARAM( FRAME, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $basetexture") - SHADER_PARAM( FRAME1, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture1") - SHADER_PARAM( FRAME2, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture2") - SHADER_PARAM( FRAME3, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture3") + SHADER_PARAM( FRAME, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $basetexture" ) + SHADER_PARAM( FRAME1, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture1" ) + SHADER_PARAM( FRAME2, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture2" ) + SHADER_PARAM( FRAME3, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture3" ) END_SHADER_PARAMS SHADER_INIT From 13de515985ca05f2aa8a3d8716aeffd9e87c96bd Mon Sep 17 00:00:00 2001 From: Evgeny Akabenko Date: Wed, 10 Jun 2026 21:55:09 +0300 Subject: [PATCH 3/3] Update screenspace_general.cpp --- src/materialsystem/stdshaders/screenspace_general.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/materialsystem/stdshaders/screenspace_general.cpp b/src/materialsystem/stdshaders/screenspace_general.cpp index 192feee182a..a23512cb9e0 100644 --- a/src/materialsystem/stdshaders/screenspace_general.cpp +++ b/src/materialsystem/stdshaders/screenspace_general.cpp @@ -43,7 +43,6 @@ BEGIN_VS_SHADER_FLAGS( screenspace_general_dx9, "Help for screenspace_general", SHADER_PARAM( LINEARWRITE,SHADER_PARAM_TYPE_INTEGER,"0","") SHADER_PARAM( X360APPCHOOSER, SHADER_PARAM_TYPE_INTEGER, "0", "Needed for movies in 360 launcher" ) SHADER_PARAM( COPYALPHA, SHADER_PARAM_TYPE_INTEGER, "0", "") - SHADER_PARAM( FRAME, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $basetexture" ) SHADER_PARAM( FRAME1, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture1" ) SHADER_PARAM( FRAME2, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture2" ) SHADER_PARAM( FRAME3, SHADER_PARAM_TYPE_INTEGER, "0", "Frame number for $texture3" )