Removes shader effect duplications.

This commit is contained in:
Vladislav Belov 2025-09-29 12:04:53 +02:00
parent 275f6631c4
commit 13b988cecb
No known key found for this signature in database
GPG key ID: 353545E45DB9CCB3
40 changed files with 100 additions and 889 deletions

View file

@ -2,14 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/bloom">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/bloom">
<pass shader="bloom">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -2,23 +2,9 @@
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/canvas2d">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/canvas2d">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/canvas2d">
<pass shader="canvas2d">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>

View file

@ -2,13 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/cas">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/cas">
<pass shader="cas">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -2,10 +2,7 @@
<effect>
<technique>
<require shaders="glsl"/>
<compute shader="glsl/compute_downscale"/>
</technique>
<technique>
<require shaders="spirv"/>
<compute shader="spirv/compute_downscale"/>
<compute shader="compute_downscale"/>
</technique>
</effect>

View file

@ -2,10 +2,7 @@
<effect>
<technique>
<require shaders="glsl"/>
<compute shader="glsl/compute_rcas"/>
</technique>
<technique>
<require shaders="spirv"/>
<compute shader="spirv/compute_rcas"/>
<compute shader="compute_rcas"/>
</technique>
</effect>

View file

@ -2,10 +2,7 @@
<effect>
<technique>
<require shaders="glsl"/>
<compute shader="glsl/compute_skinning"/>
</technique>
<technique>
<require shaders="spirv"/>
<compute shader="spirv/compute_skinning"/>
<compute shader="compute_skinning"/>
</technique>
</effect>

View file

@ -2,10 +2,7 @@
<effect>
<technique>
<require shaders="glsl"/>
<compute shader="glsl/compute_upscale_fsr"/>
</technique>
<technique>
<require shaders="spirv"/>
<compute shader="spirv/compute_upscale_fsr"/>
<compute shader="compute_upscale_fsr"/>
</technique>
</effect>

View file

@ -1,19 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/debug_overlay"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/debug_overlay"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/debug_overlay"/>
<pass shader="debug_overlay"/>
</technique>
</effect>

View file

@ -1,31 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<define name="DEBUG_TEXTURED" value="1"/>
<require shaders="arb"/>
<pass shader="arb/debug_overlay">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<define name="DEBUG_TEXTURED" value="1"/>
<require shaders="glsl"/>
<pass shader="glsl/debug_overlay">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<define name="DEBUG_TEXTURED" value="1"/>
<require shaders="spirv"/>
<pass shader="spirv/debug_overlay">
<pass shader="debug_overlay">
<depth test="FALSE" mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
</effect>

View file

@ -2,14 +2,8 @@
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/dummy"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/dummy"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/dummy"/>
<pass shader="dummy"/>
</technique>
</effect>

View file

@ -1,19 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/foreground_overlay"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/foreground_overlay"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/foreground_overlay"/>
<pass shader="foreground_overlay"/>
</technique>
</effect>

View file

@ -2,13 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/fxaa">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/fxaa">
<pass shader="fxaa">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -2,14 +2,8 @@
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/los_interp"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/los_interp"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/los_interp"/>
<pass shader="los_interp"/>
</technique>
</effect>

View file

@ -1,25 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/minimap">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/minimap">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/minimap">
<pass shader="minimap">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,31 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<define name="MINIMAP_LOS" value="1"/>
<pass shader="arb/minimap">
<depth test="FALSE" mask="false"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="TRUE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<define name="MINIMAP_LOS" value="1"/>
<pass shader="glsl/minimap">
<depth test="FALSE" mask="false"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="TRUE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<define name="MINIMAP_LOS" value="1"/>
<pass shader="spirv/minimap">
<pass shader="minimap">
<depth test="FALSE" mask="false"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="TRUE"/>
</pass>
</technique>
</effect>

View file

@ -2,14 +2,8 @@
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/overlayline"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/overlayline"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/overlayline"/>
<pass shader="overlayline"/>
</technique>
</effect>

View file

@ -2,14 +2,8 @@
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/overlay_solid"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/overlay_solid"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/overlay_solid"/>
<pass shader="overlay_solid"/>
</technique>
</effect>

View file

@ -1,25 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle">
<pass shader="particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
</effect>

View file

@ -1,28 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle">
<blend src="src_alpha" dst="one"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle">
<blend src="src_alpha" dst="one"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle">
<pass shader="particle">
<blend src="src_alpha" dst="one"/>
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,28 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle">
<blend src="zero" dst="one_minus_src_color"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle">
<blend src="zero" dst="one_minus_src_color"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle">
<pass shader="particle">
<blend src="zero" dst="one_minus_src_color"/>
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,28 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle">
<pass shader="particle">
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,50 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<require shaders="glsl"/>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="particle_solid">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/particle_solid">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/particle_solid">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/particle_solid">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle_solid">
<pass shader="particle_solid">
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle_solid">
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle_solid">
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,28 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/particle">
<blend src="src_alpha" dst="one" op="REVERSE_SUBTRACT"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/particle">
<blend src="src_alpha" dst="one" op="REVERSE_SUBTRACT"/>
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/particle">
<pass shader="particle">
<blend src="src_alpha" dst="one" op="REVERSE_SUBTRACT"/>
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -2,21 +2,12 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/dof">
<define name="BLUR_FOV" value="3"/>
<depth test="FALSE" mask="false"/>
</pass>
<pass shader="glsl/hdr">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/dof">
<pass shader="dof">
<define name="BLUR_FOV" value="3"/>
<depth test="FALSE" mask="false"/>
</pass>
<pass shader="spirv/hdr">
<pass shader="hdr">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/hdr">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/hdr">
<pass shader="hdr">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,25 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/sky">
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/sky">
<depth mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/sky">
<pass shader="sky">
<depth mask="false"/>
</pass>
</technique>
</effect>

View file

@ -1,19 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<pass shader="arb/solid"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/solid"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/solid"/>
<pass shader="solid"/>
</technique>
</effect>

View file

@ -1,69 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<pass shader="arb/terrain_base">
<require shaders="glsl"/>
<require shaders="spirv"/>
<pass shader="terrain_base">
<cull mode="FRONT"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<require shaders="glsl"/>
<pass shader="glsl/terrain_base">
<cull mode="FRONT"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="spirv"/>
<pass shader="spirv/terrain_base">
<cull mode="FRONT"/>
<require context="MODE_WIREFRAME"/>
<pass shader="terrain_base">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/terrain_base">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/terrain_base">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/terrain_base">
<polygon mode="LINE"/>
</pass>
<pass shader="terrain_base"/>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/terrain_base"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/terrain_base"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/terrain_base"/>
</technique>
</effect>

View file

@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<pass shader="arb/terrain_blend">
<require shaders="glsl"/>
<require shaders="spirv"/>
<pass shader="terrain_blend">
<depth mask="false"/>
<cull mode="FRONT"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
@ -12,79 +13,24 @@
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<require shaders="glsl"/>
<pass shader="glsl/terrain_blend">
<depth mask="false"/>
<cull mode="FRONT"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="spirv"/>
<pass shader="spirv/terrain_blend">
<require context="MODE_WIREFRAME"/>
<pass shader="terrain_blend">
<depth mask="false"/>
<cull mode="FRONT"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/terrain_blend">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/terrain_blend">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/terrain_blend">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/terrain_blend">
<pass shader="terrain_blend">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/terrain_blend">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/terrain_blend">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
</effect>

View file

@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<pass shader="arb/terrain_decal">
<require shaders="glsl"/>
<require shaders="spirv"/>
<pass shader="terrain_decal">
<depth mask="false"/>
<cull mode="FRONT"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
@ -12,79 +13,24 @@
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<require shaders="glsl"/>
<pass shader="glsl/terrain_decal">
<depth mask="false"/>
<cull mode="FRONT"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="spirv"/>
<pass shader="spirv/terrain_decal">
<require context="MODE_WIREFRAME"/>
<pass shader="terrain_decal">
<depth mask="false"/>
<cull mode="FRONT"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/terrain_decal">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/terrain_decal">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/terrain_decal">
<depth mask="false"/>
<polygon mode="LINE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/terrain_decal">
<pass shader="terrain_decal">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/terrain_decal">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/terrain_decal">
<depth mask="false"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
</effect>

View file

@ -1,32 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require context="PASS_SHADOWS || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="arb"/>
<pass shader="arb/dummy">
<!-- See GLSL -->
<cull mode="FRONT"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="PASS_SHADOWS || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="glsl"/>
<pass shader="glsl/dummy">
<!--
To prevent units displaying silhouettes when parts of their model
protrude into the ground, only occlude with the back faces of the
terrain (so silhouettes will still display when behind hills).
-->
<cull mode="FRONT"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="PASS_SHADOWS || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="spirv"/>
<pass shader="spirv/dummy">
<pass shader="dummy">
<!--
To prevent units displaying silhouettes when parts of their model
protrude into the ground, only occlude with the back faces of the
@ -39,37 +18,19 @@
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/dummy">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/dummy">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/dummy">
<pass shader="dummy">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/dummy"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/dummy"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/dummy"/>
<pass shader="dummy"/>
</technique>
</effect>

View file

@ -2,13 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/upscale_bilinear">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/upscale_bilinear">
<pass shader="upscale_bilinear">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -2,13 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/upscale_nearest">
<depth test="FALSE" mask="false"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/upscale_nearest">
<pass shader="upscale_nearest">
<depth test="FALSE" mask="false"/>
</pass>
</technique>

View file

@ -2,15 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/water_high">
<depth test="TRUE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/water_high">
<pass shader="water_high">
<depth test="TRUE"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>

View file

@ -1,53 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require shaders="arb"/>
<require shaders="glsl"/>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="water_simple">
<depth test="TRUE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<require context="MODE_WIREFRAME"/>
<pass shader="arb/water_simple">
<depth test="TRUE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<require context="MODE_WIREFRAME"/>
<pass shader="glsl/water_simple">
<depth test="TRUE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<require context="MODE_WIREFRAME"/>
<pass shader="spirv/water_simple">
<depth test="TRUE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/water_simple">
<pass shader="water_simple">
<depth test="TRUE"/>
</pass>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/water_simple">
<depth test="TRUE"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/water_simple">
<depth test="TRUE"/>
</pass>
</technique>
</effect>

View file

@ -2,15 +2,8 @@
<effect>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/waves">
<depth test="TRUE" func="always"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/waves">
<pass shader="waves">
<depth test="TRUE" func="always"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
</pass>

View file

@ -1,26 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<effect>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<cull mode="FRONT"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<cull mode="FRONT"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<cull mode="FRONT"/>
</pass>
</technique>
@ -28,122 +13,49 @@
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="arb"/>
<pass shader="arb/model_solid">
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid">
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid">
<pass shader="model_solid">
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="arb"/>
<pass shader="arb/model_solid_player">
<pass shader="model_common">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="arb"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid_player">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid_player">
<pass shader="model_solid_player">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="arb"/>
<pass shader="arb/model_solid_player">
<require shaders="glsl"/>
<require shaders="spirv"/>
<pass shader="model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
<blend src="constant_alpha" dst="one_minus_constant_alpha" constant="0 0 0 191"/>
</pass>
</technique>
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
<blend src="constant_alpha" dst="one_minus_constant_alpha" constant="0 0 0 191"/>
</pass>
</technique>
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
<blend src="constant_alpha" dst="one_minus_constant_alpha" constant="0 0 0 191"/>
</pass>
</technique>
<technique>
<require shaders="arb"/>
<pass shader="arb/model_common"/>
</technique>
<technique>
<require shaders="glsl"/>
<pass shader="glsl/model_common"/>
</technique>
<technique>
<require shaders="spirv"/>
<pass shader="spirv/model_common"/>
<pass shader="model_common"/>
</technique>
</effect>

View file

@ -4,29 +4,9 @@
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="arb"/>
<pass shader="arb/model_solid_tex">
<define name="REQUIRE_ALPHA_GEQUAL" value="0.4"/>
<!-- Disable face-culling for two-sided models -->
<cull mode="NONE"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid_tex">
<define name="REQUIRE_ALPHA_GEQUAL" value="0.4"/>
<!-- Disable face-culling for two-sided models -->
<cull mode="NONE"/>
<color mask_red="FALSE" mask_green="FALSE" mask_blue="FALSE" mask_alpha="FALSE"/>
</pass>
</technique>
<technique>
<require context="MODE_SHADOWCAST || MODE_SILHOUETTEOCCLUDER"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid_tex">
<pass shader="model_solid_tex">
<define name="REQUIRE_ALPHA_GEQUAL" value="0.4"/>
<!-- Disable face-culling for two-sided models -->
<cull mode="NONE"/>
@ -42,82 +22,30 @@
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="arb"/>
<pass shader="arb/model_solid_player">
<require shaders="glsl"/>
<require shaders="spirv"/>
<pass shader="model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
</pass>
</technique>
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
</pass>
</technique>
<technique>
<require context="MODE_SILHOUETTEDISPLAY"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid_player">
<depth func="gequal"/>
<stencil test="TRUE" compare="notequal" reference="1" mask_read="4294967295" pass="REPLACE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="arb"/>
<pass shader="arb/model_solid_player">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="glsl"/>
<pass shader="glsl/model_solid_player">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME_SOLID"/>
<require shaders="spirv"/>
<pass shader="spirv/model_solid_player">
<pass shader="model_solid_player">
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
<cull mode="NONE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
<cull mode="NONE"/>
<polygon mode="LINE"/>
</pass>
</technique>
<technique>
<require context="MODE_WIREFRAME"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<define name="USE_TRANSPARENT" value="1"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
@ -126,68 +54,26 @@
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
<cull mode="NONE"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
<cull mode="NONE"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
<cull mode="NONE"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
<cull mode="NONE"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
<cull mode="NONE"/>
</pass>
</technique>
<technique>
<require context="PASS_REFLECTIONS"/>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
@ -196,67 +82,27 @@
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_OPAQUE"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.6375"/>
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="arb"/>
<pass shader="arb/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="glsl"/>
<pass shader="glsl/model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
</pass>
</technique>
<technique>
<require context="ALPHABLEND_PASS_BLEND"/>
<require shaders="spirv"/>
<pass shader="spirv/model_common">
<pass shader="model_common">
<define name="USE_TRANSPARENT" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="false"/>
</pass>
</technique>
</effect>

View file

@ -2,21 +2,9 @@
<effect>
<technique>
<require shaders="glsl"/>
<sort_by_distance/>
<pass shader="glsl/model_water">
<define name="USE_TRANSPARENT" value="1"/>
<define name="USE_SPECULAR" value="1"/>
<define name="USE_NORMAL_MAP" value="1"/>
<define name="USE_INSTANCING" value="1"/>
<define name="REQUIRE_ALPHA_GEQUAL" value="0.05"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="less" mask="true"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<sort_by_distance/>
<pass shader="spirv/model_water">
<pass shader="model_water">
<define name="USE_TRANSPARENT" value="1"/>
<define name="USE_SPECULAR" value="1"/>
<define name="USE_NORMAL_MAP" value="1"/>

View file

@ -2,18 +2,9 @@
<effect>
<technique>
<require shaders="glsl"/>
<sort_by_distance/>
<pass shader="glsl/model_waterfall">
<define name="USE_TRANSPARENT" value="1"/>
<define name="USE_INSTANCING" value="1"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>
<depth func="lequal" mask="true"/>
</pass>
</technique>
<technique>
<require shaders="spirv"/>
<sort_by_distance/>
<pass shader="spirv/model_waterfall">
<pass shader="model_waterfall">
<define name="USE_TRANSPARENT" value="1"/>
<define name="USE_INSTANCING" value="1"/>
<blend src="src_alpha" dst="one_minus_src_alpha"/>