diff options
author | 2023-01-28 17:59:25 +0100 | |
---|---|---|
committer | 2023-01-29 03:59:25 +1100 | |
commit | 5671484fc87fc11b536a0b0f6cb0efb1e680d489 (patch) | |
tree | 57d713a7d5ed6936a691473ade2962569849ecfa /bgfx/chains | |
parent | cc7ad69ddd6d0fdb515db586ff1345e1eeaf38f4 (diff) |
Major D3D and BGFX code refactoring and bug fixes: (#10858) [Ryan Holtz]
* render/bgfx: Improved clearing and blending. Added prescale support. Fixes MT07586, MT07587, MT08084.
* render/bgfx: Fixed blend and tint handling. (Fixes Github #1953).
* render/bgfx/blendreader.cpp: Support non-separated blend mode specification for BGFX effects.
* render/bgfx: Reworked how horizontally-padded screen textures are handled. Likely fixes MT08512 and MT08505.
* render/bgfx: Ensure that a texture's width margin is updated in all cases.
* render/d3d/d3dhlsl.cpp: Fixed tinting in HLSL post-processing mode.
* render/d3d/d3dhlsl.cpp: Avoid most redundant state-setting calls. Reduces D3D API calls by about 90% on fruit machine drivers.
* render/d3d/d3dhlsl.cpp: Assign SourceDims and QuadDims uniforms to only those effects that use them.
* machine/laserdsc.cpp: Always add video quad to screen container, adjust tint based on m_videoenable instead.
Diffstat (limited to 'bgfx/chains')
36 files changed, 2 insertions, 38 deletions
diff --git a/bgfx/chains/crt-geom-deluxe.json b/bgfx/chains/crt-geom-deluxe.json index 9978c2279a8..f138845c774 100644 --- a/bgfx/chains/crt-geom-deluxe.json +++ b/bgfx/chains/crt-geom-deluxe.json @@ -283,7 +283,6 @@ }, { "effect": "crt-geom/phosphor_apply", - "applytint": true, "name": "phosphor apply", "uniforms": [ { "uniform": "u_phosphor_power", "slider": "phosphor_power" }, diff --git a/bgfx/chains/crt-geom.json b/bgfx/chains/crt-geom.json index 34cccc2d040..da6fb4e3e2c 100644 --- a/bgfx/chains/crt-geom.json +++ b/bgfx/chains/crt-geom.json @@ -163,7 +163,6 @@ "passes": [ { "effect": "crt-geom/crt-geom", - "applytint": true, "name": "CRT", "uniforms": [ { "uniform": "curvature", "slider": "curvature" }, diff --git a/bgfx/chains/default.json b/bgfx/chains/default.json index 5df37df64c7..44110127cf2 100644 --- a/bgfx/chains/default.json +++ b/bgfx/chains/default.json @@ -3,12 +3,12 @@ "targets": [ { "name": "temp", "mode": "guest", - "bilinear": true + "bilinear": true, + "user_prescale": true } ], "passes": [ { "effect": "misc/blit", - "applytint": true, "name": "Copy To Filtered Texture", "input": [ { "sampler": "s_tex", "texture": "screen" } diff --git a/bgfx/chains/eagle/super-eagle.json b/bgfx/chains/eagle/super-eagle.json index 64cf0a38244..6eb46bb89a6 100644 --- a/bgfx/chains/eagle/super-eagle.json +++ b/bgfx/chains/eagle/super-eagle.json @@ -26,7 +26,6 @@ "passes": [ { "effect": "eagle/supereagle", - "applytint": true, "name": "Super Eagle pass", "input": [ { "sampler": "decal", "texture": "screen" }, diff --git a/bgfx/chains/hlsl.json b/bgfx/chains/hlsl.json index 3164339ff0b..59b56153f44 100644 --- a/bgfx/chains/hlsl.json +++ b/bgfx/chains/hlsl.json @@ -204,7 +204,6 @@ "input": [ { "sampler": "s_tex", "texture": "screen" } ], - "applytint": true, "output": "ntsc" }, { @@ -349,7 +348,6 @@ "input": [ { "sampler": "s_tex", "texture": "screen" } ], - "applytint": true, "output": "guest" }, { "effect": "hlsl/color", diff --git a/bgfx/chains/hqx/hq2x.json b/bgfx/chains/hqx/hq2x.json index 8f500549181..f26f773ad39 100644 --- a/bgfx/chains/hqx/hq2x.json +++ b/bgfx/chains/hqx/hq2x.json @@ -43,7 +43,6 @@ "passes": [ { "effect": "hqx/hq2x", - "applytint": true, "name": "HQ2x pass", "input": [ { "sampler": "decal", "texture": "screen" }, diff --git a/bgfx/chains/hqx/hq3x.json b/bgfx/chains/hqx/hq3x.json index 119946414f5..d06b3d6a499 100644 --- a/bgfx/chains/hqx/hq3x.json +++ b/bgfx/chains/hqx/hq3x.json @@ -43,7 +43,6 @@ "passes": [ { "effect": "hqx/hq3x", - "applytint": true, "name": "HQ3x pass", "input": [ { "sampler": "decal", "texture": "screen" }, diff --git a/bgfx/chains/hqx/hq4x.json b/bgfx/chains/hqx/hq4x.json index 9ba3f2edcdd..347ff1c18b5 100644 --- a/bgfx/chains/hqx/hq4x.json +++ b/bgfx/chains/hqx/hq4x.json @@ -43,7 +43,6 @@ "passes": [ { "effect": "hqx/hq4x", - "applytint": true, "name": "HQ4x pass", "input": [ { "sampler": "decal", "texture": "screen" }, diff --git a/bgfx/chains/lcd-grid.json b/bgfx/chains/lcd-grid.json index d12e7a26b4d..4e103640e93 100644 --- a/bgfx/chains/lcd-grid.json +++ b/bgfx/chains/lcd-grid.json @@ -123,7 +123,6 @@ }, { "effect": "lcd-grid/lcd-grid", - "applytint": true, "name": "LCD", "uniforms": [ { "uniform": "u_rsubpix", "slider": "rsubpix" }, diff --git a/bgfx/chains/lut.json b/bgfx/chains/lut.json index 6143410f009..50353b5292b 100644 --- a/bgfx/chains/lut.json +++ b/bgfx/chains/lut.json @@ -10,7 +10,6 @@ "passes": [ { "effect": "misc/blit", - "applytint": true, "name": "Copy To Filtered Texture", "input": [ { "sampler": "s_tex", "texture": "screen" } diff --git a/bgfx/chains/unfiltered.json b/bgfx/chains/unfiltered.json index d17a01f412b..ee64121dabd 100644 --- a/bgfx/chains/unfiltered.json +++ b/bgfx/chains/unfiltered.json @@ -2,7 +2,6 @@ "author": "Ryan Holtz", "passes": [ { "effect": "misc/blit", - "applytint": true, "name": "Unfiltered Upscale", "input": [ { "sampler": "s_tex", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-2xbr-3d-2p.json b/bgfx/chains/xbr/super-2xbr-3d-2p.json index 3f998786625..973ed3bbb1c 100644 --- a/bgfx/chains/xbr/super-2xbr-3d-2p.json +++ b/bgfx/chains/xbr/super-2xbr-3d-2p.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-2xbr-3d-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-2xbr-3d-3p-smoother.json b/bgfx/chains/xbr/super-2xbr-3d-3p-smoother.json index 37144fb1acc..7748d77a411 100644 --- a/bgfx/chains/xbr/super-2xbr-3d-3p-smoother.json +++ b/bgfx/chains/xbr/super-2xbr-3d-3p-smoother.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-2xbr-3d-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-4xbr-3d-4p.json b/bgfx/chains/xbr/super-4xbr-3d-4p.json index d88fcfff279..ea52a34aa14 100644 --- a/bgfx/chains/xbr/super-4xbr-3d-4p.json +++ b/bgfx/chains/xbr/super-4xbr-3d-4p.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-4xbr-3d-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-4xbr-3d-6p-smoother.json b/bgfx/chains/xbr/super-4xbr-3d-6p-smoother.json index 53cd24c0210..0089a92eec9 100644 --- a/bgfx/chains/xbr/super-4xbr-3d-6p-smoother.json +++ b/bgfx/chains/xbr/super-4xbr-3d-6p-smoother.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-4xbr-3d-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-2p.json b/bgfx/chains/xbr/super-xbr-2p.json index f733ab21610..df66e7dfa96 100644 --- a/bgfx/chains/xbr/super-xbr-2p.json +++ b/bgfx/chains/xbr/super-xbr-2p.json @@ -49,7 +49,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-xbr-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-3p-smoother.json b/bgfx/chains/xbr/super-xbr-3p-smoother.json index f7d2bf5165e..7c53a8f0fea 100644 --- a/bgfx/chains/xbr/super-xbr-3p-smoother.json +++ b/bgfx/chains/xbr/super-xbr-3p-smoother.json @@ -49,7 +49,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-xbr-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-6p.json b/bgfx/chains/xbr/super-xbr-6p.json index cffd4d24a26..f0e3d4e4c9e 100644 --- a/bgfx/chains/xbr/super-xbr-6p.json +++ b/bgfx/chains/xbr/super-xbr-6p.json @@ -63,7 +63,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-xbr-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-deposterize.json b/bgfx/chains/xbr/super-xbr-deposterize.json index 4010e7f1215..e3543ae41af 100644 --- a/bgfx/chains/xbr/super-xbr-deposterize.json +++ b/bgfx/chains/xbr/super-xbr-deposterize.json @@ -48,7 +48,6 @@ "passes": [ { "effect": "misc/deposterize-pass0", - "applytint": true, "name": "Deposterize, Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-fast-3p.json b/bgfx/chains/xbr/super-xbr-fast-3p.json index 7ccf13b1669..472a3cd5413 100644 --- a/bgfx/chains/xbr/super-xbr-fast-3p.json +++ b/bgfx/chains/xbr/super-xbr-fast-3p.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-xbr-fast-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/super-xbr-fast-6p.json b/bgfx/chains/xbr/super-xbr-fast-6p.json index a7d32c22907..cfdc3779a8b 100644 --- a/bgfx/chains/xbr/super-xbr-fast-6p.json +++ b/bgfx/chains/xbr/super-xbr-fast-6p.json @@ -55,7 +55,6 @@ "passes": [ { "effect": "xbr/super-xbr/super-xbr-fast-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "s0", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-hybrid.json b/bgfx/chains/xbr/xbr-hybrid.json index 963283618cc..b61095aaf36 100644 --- a/bgfx/chains/xbr/xbr-hybrid.json +++ b/bgfx/chains/xbr/xbr-hybrid.json @@ -22,7 +22,6 @@ "passes": [ { "effect": "xbr/xbr-hybrid/2xbr-hybrid-v4b", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv1-noblend.json b/bgfx/chains/xbr/xbr-lv1-noblend.json index 123dc565582..216edc4b0a6 100644 --- a/bgfx/chains/xbr/xbr-lv1-noblend.json +++ b/bgfx/chains/xbr/xbr-lv1-noblend.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv1-noblend", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-3d.json b/bgfx/chains/xbr/xbr-lv2-3d.json index 048f72e8e04..29a3ef24276 100644 --- a/bgfx/chains/xbr/xbr-lv2-3d.json +++ b/bgfx/chains/xbr/xbr-lv2-3d.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-3d", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-accuracy-multipass.json b/bgfx/chains/xbr/xbr-lv2-accuracy-multipass.json index 5258f7c9840..1e14d28ece0 100644 --- a/bgfx/chains/xbr/xbr-lv2-accuracy-multipass.json +++ b/bgfx/chains/xbr/xbr-lv2-accuracy-multipass.json @@ -41,7 +41,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-multipass/xbr-lv2-accuracy-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-accuracy-smart-blur.json b/bgfx/chains/xbr/xbr-lv2-accuracy-smart-blur.json index b6e8ea3c8e4..5a7fffdb46e 100644 --- a/bgfx/chains/xbr/xbr-lv2-accuracy-smart-blur.json +++ b/bgfx/chains/xbr/xbr-lv2-accuracy-smart-blur.json @@ -21,7 +21,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-multipass/xbr-lv2-accuracy-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-deposterize.json b/bgfx/chains/xbr/xbr-lv2-deposterize.json index 7451cd54ab4..63c55bd28cd 100644 --- a/bgfx/chains/xbr/xbr-lv2-deposterize.json +++ b/bgfx/chains/xbr/xbr-lv2-deposterize.json @@ -15,7 +15,6 @@ "passes": [ { "effect": "misc/deposterize-pass0", - "applytint": true, "name": "Deposterize, Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-fast.json b/bgfx/chains/xbr/xbr-lv2-fast.json index 26bcce5ef0b..466295b3d38 100644 --- a/bgfx/chains/xbr/xbr-lv2-fast.json +++ b/bgfx/chains/xbr/xbr-lv2-fast.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-fast", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-multipass.json b/bgfx/chains/xbr/xbr-lv2-multipass.json index 2dd34a9b9d3..287afbe8825 100644 --- a/bgfx/chains/xbr/xbr-lv2-multipass.json +++ b/bgfx/chains/xbr/xbr-lv2-multipass.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-multipass/xbr-lv2-c-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2-noblend.json b/bgfx/chains/xbr/xbr-lv2-noblend.json index db08feb2647..0721e6a903b 100644 --- a/bgfx/chains/xbr/xbr-lv2-noblend.json +++ b/bgfx/chains/xbr/xbr-lv2-noblend.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv2-noblend", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv2.json b/bgfx/chains/xbr/xbr-lv2.json index 3f589d734fe..49019d422b4 100644 --- a/bgfx/chains/xbr/xbr-lv2.json +++ b/bgfx/chains/xbr/xbr-lv2.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv2", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv3-multipass.json b/bgfx/chains/xbr/xbr-lv3-multipass.json index ac63612b704..6e9f49b8ebb 100644 --- a/bgfx/chains/xbr/xbr-lv3-multipass.json +++ b/bgfx/chains/xbr/xbr-lv3-multipass.json @@ -42,7 +42,6 @@ "passes": [ { "effect": "xbr/xbr-lv3-multipass/xbr-lv3-pass0", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv3-noblend.json b/bgfx/chains/xbr/xbr-lv3-noblend.json index 8f5b3ac2e2e..9e8e788d5fa 100644 --- a/bgfx/chains/xbr/xbr-lv3-noblend.json +++ b/bgfx/chains/xbr/xbr-lv3-noblend.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv3-noblend", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-lv3.json b/bgfx/chains/xbr/xbr-lv3.json index ddeb80874c9..1bb2352fe76 100644 --- a/bgfx/chains/xbr/xbr-lv3.json +++ b/bgfx/chains/xbr/xbr-lv3.json @@ -32,7 +32,6 @@ "passes": [ { "effect": "xbr/xbr-lv3", - "applytint": true, "name": "Main Pass", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-mlv4-dilation.json b/bgfx/chains/xbr/xbr-mlv4-dilation.json index 3ce4926ca8b..e9d80f8fb19 100644 --- a/bgfx/chains/xbr/xbr-mlv4-dilation.json +++ b/bgfx/chains/xbr/xbr-mlv4-dilation.json @@ -56,7 +56,6 @@ "passes": [ { "effect": "xbr/xbr-mlv4-multipass/xbr-mlv4-pass1", - "applytint": true, "name": "Pass 1", "input": [ { "sampler": "decal", "texture": "screen" } diff --git a/bgfx/chains/xbr/xbr-mlv4-multipass.json b/bgfx/chains/xbr/xbr-mlv4-multipass.json index 2eb09a7f87d..64838263e22 100644 --- a/bgfx/chains/xbr/xbr-mlv4-multipass.json +++ b/bgfx/chains/xbr/xbr-mlv4-multipass.json @@ -49,7 +49,6 @@ "passes": [ { "effect": "xbr/xbr-mlv4-multipass/xbr-mlv4-pass1", - "applytint": true, "name": "Pass 0", "input": [ { "sampler": "decal", "texture": "screen" } |