diff --git a/res/gamedata/shaders/gl/iostructs/p_rain_apply.h b/res/gamedata/shaders/gl/iostructs/p_rain_apply.h new file mode 100644 index 00000000000..0baaf163ebc --- /dev/null +++ b/res/gamedata/shaders/gl/iostructs/p_rain_apply.h @@ -0,0 +1,23 @@ + +out vec4 SV_Target; +#ifdef MSAA_OPTIMIZATION +in int gl_SampleID; +#endif + +layout(location = TEXCOORD0) in float2 p_rain_tc ; // TEXCOORD0; +layout(location = TEXCOORD1) in float2 p_rain_tcJ ; // TEXCOORD1; + +#ifdef MSAA_OPTIMIZATION +float4 _main ( float2 tc, float2 tcJ, uint iSample ); +#else +float4 _main ( float2 tc, float2 tcJ ); +#endif + +void main() +{ +#ifdef MSAA_OPTIMIZATION + SV_Target = _main ( p_rain_tc, p_rain_tcJ, gl_SampleID ); +#else + SV_Target = _main ( p_rain_tc, p_rain_tcJ ); +#endif +} diff --git a/res/gamedata/shaders/gl/iostructs/p_rain_layer.h b/res/gamedata/shaders/gl/iostructs/p_rain_layer.h new file mode 100644 index 00000000000..00356648cb5 --- /dev/null +++ b/res/gamedata/shaders/gl/iostructs/p_rain_layer.h @@ -0,0 +1,23 @@ + +out vec4 SV_Target; +#ifdef GBUFFER_OPTIMIZATION +in vec4 gl_FragCoord; +#endif + +layout(location = TEXCOORD0) in float2 p_rain_tc ; // TEXCOORD0; +layout(location = TEXCOORD1) in float2 p_rain_tcJ ; // TEXCOORD1; + +#ifdef GBUFFER_OPTIMIZATION +float4 _main ( float2 tc, float2 tcJ, float4 pos2d ); +#else +float4 _main ( float2 tc, float2 tcJ ); +#endif + +void main() +{ +#ifdef GBUFFER_OPTIMIZATION + SV_Target = _main ( p_rain_tc, p_rain_tcJ, gl_FragCoord ); +#else + SV_Target = _main ( p_rain_tc, p_rain_tcJ ); +#endif +} diff --git a/res/gamedata/shaders/gl/iostructs/p_rain_patch.h b/res/gamedata/shaders/gl/iostructs/p_rain_patch.h new file mode 100644 index 00000000000..91cfd604ce3 --- /dev/null +++ b/res/gamedata/shaders/gl/iostructs/p_rain_patch.h @@ -0,0 +1,43 @@ + +out vec4 SV_Target; +#ifdef MSAA_OPTIMIZATION +in int gl_SampleID; +#endif +#ifdef GBUFFER_OPTIMIZATION +in vec4 gl_FragCoord; +#endif + +layout(location = TEXCOORD0) in float2 p_rain_tc ; // TEXCOORD0; +layout(location = TEXCOORD1) in float2 p_rain_tcJ ; // TEXCOORD1; +layout(location = COLOR) in float4 p_rain_Color; // COLOR; + +#ifdef GBUFFER_OPTIMIZATION +#ifdef MSAA_OPTIMIZATION +float4 _main ( float2 tc, float2 tcJ, float4 Color, float4 pos2d, uint iSample ); +#else +float4 _main ( float2 tc, float2 tcJ, float4 Color, float4 pos2d ); +#endif +#else +#ifdef MSAA_OPTIMIZATION +float4 _main ( float2 tc, float2 tcJ, uint iSample ); +#else +float4 _main ( float2 tc, float2 tcJ ); +#endif +#endif + +void main() +{ +#ifdef GBUFFER_OPTIMIZATION +#ifdef MSAA_OPTIMIZATION + SV_Target = _main ( p_rain_tc, p_rain_tcJ, p_rain_Color, gl_FragCoord, gl_SampleID ); +#else + SV_Target = _main ( p_rain_tc, p_rain_tcJ, p_rain_Color, gl_FragCoord ); +#endif +#else +#ifdef MSAA_OPTIMIZATION + SV_Target = _main ( p_rain_tc, p_rain_tcJ, gl_SampleID ); +#else + SV_Target = _main ( p_rain_tc, p_rain_tcJ ); +#endif +#endif +} diff --git a/res/gamedata/shaders/gl/rain_apply_gloss.ps b/res/gamedata/shaders/gl/rain_apply_gloss.ps new file mode 100644 index 00000000000..56da21af9b1 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_gloss.ps differ diff --git a/res/gamedata/shaders/gl/rain_apply_gloss_msaa.ps b/res/gamedata/shaders/gl/rain_apply_gloss_msaa.ps new file mode 100644 index 00000000000..5dd39f8ac7e Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_gloss_msaa.ps differ diff --git a/res/gamedata/shaders/gl/rain_apply_gloss_nomsaa.ps b/res/gamedata/shaders/gl/rain_apply_gloss_nomsaa.ps new file mode 100644 index 00000000000..208ad78faf0 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_gloss_nomsaa.ps differ diff --git a/res/gamedata/shaders/gl/rain_apply_normal.ps b/res/gamedata/shaders/gl/rain_apply_normal.ps new file mode 100644 index 00000000000..62e54171a90 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_normal.ps differ diff --git a/res/gamedata/shaders/gl/rain_apply_normal_msaa.ps b/res/gamedata/shaders/gl/rain_apply_normal_msaa.ps new file mode 100644 index 00000000000..fc30d7f2cd8 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_normal_msaa.ps differ diff --git a/res/gamedata/shaders/gl/rain_apply_normal_nomsaa.ps b/res/gamedata/shaders/gl/rain_apply_normal_nomsaa.ps new file mode 100644 index 00000000000..60d89f25eb4 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_apply_normal_nomsaa.ps differ diff --git a/res/gamedata/shaders/gl/rain_layer.ps b/res/gamedata/shaders/gl/rain_layer.ps new file mode 100644 index 00000000000..d886122aa45 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_layer.ps differ diff --git a/res/gamedata/shaders/gl/rain_patch_normal.ps b/res/gamedata/shaders/gl/rain_patch_normal.ps new file mode 100644 index 00000000000..e75fe9dfe1c Binary files /dev/null and b/res/gamedata/shaders/gl/rain_patch_normal.ps differ diff --git a/res/gamedata/shaders/gl/rain_patch_normal_msaa.ps b/res/gamedata/shaders/gl/rain_patch_normal_msaa.ps new file mode 100644 index 00000000000..8d70c0ba35a Binary files /dev/null and b/res/gamedata/shaders/gl/rain_patch_normal_msaa.ps differ diff --git a/res/gamedata/shaders/gl/rain_patch_normal_new.ps b/res/gamedata/shaders/gl/rain_patch_normal_new.ps new file mode 100644 index 00000000000..8be4dd8c458 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_patch_normal_new.ps differ diff --git a/res/gamedata/shaders/gl/rain_patch_normal_nomsaa.ps b/res/gamedata/shaders/gl/rain_patch_normal_nomsaa.ps new file mode 100644 index 00000000000..c29d975d0e4 Binary files /dev/null and b/res/gamedata/shaders/gl/rain_patch_normal_nomsaa.ps differ