diff options
Diffstat (limited to 'src/video_core/host_shaders')
| -rw-r--r-- | src/video_core/host_shaders/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | src/video_core/host_shaders/convert_abgr8_to_d32f.frag | 9 | ||||
| -rw-r--r-- | src/video_core/host_shaders/convert_d32f_to_bgra8.frag | 15 |
3 files changed, 3 insertions, 22 deletions
diff --git a/src/video_core/host_shaders/CMakeLists.txt b/src/video_core/host_shaders/CMakeLists.txt index cff8e38d6..cd2549232 100644 --- a/src/video_core/host_shaders/CMakeLists.txt +++ b/src/video_core/host_shaders/CMakeLists.txt | |||
| @@ -21,7 +21,6 @@ set(SHADER_FILES | |||
| 21 | convert_abgr8_to_d24s8.frag | 21 | convert_abgr8_to_d24s8.frag |
| 22 | convert_abgr8_to_d32f.frag | 22 | convert_abgr8_to_d32f.frag |
| 23 | convert_d32f_to_abgr8.frag | 23 | convert_d32f_to_abgr8.frag |
| 24 | convert_d32f_to_bgra8.frag | ||
| 25 | convert_d24s8_to_abgr8.frag | 24 | convert_d24s8_to_abgr8.frag |
| 26 | convert_depth_to_float.frag | 25 | convert_depth_to_float.frag |
| 27 | convert_float_to_depth.frag | 26 | convert_float_to_depth.frag |
diff --git a/src/video_core/host_shaders/convert_abgr8_to_d32f.frag b/src/video_core/host_shaders/convert_abgr8_to_d32f.frag index a1880b916..095b910c2 100644 --- a/src/video_core/host_shaders/convert_abgr8_to_d32f.frag +++ b/src/video_core/host_shaders/convert_abgr8_to_d32f.frag | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2023 Your Project | 1 | // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project |
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | 2 | // SPDX-License-Identifier: GPL-2.0-or-later |
| 3 | 3 | ||
| 4 | #version 450 | 4 | #version 450 |
| @@ -9,10 +9,7 @@ void main() { | |||
| 9 | ivec2 coord = ivec2(gl_FragCoord.xy); | 9 | ivec2 coord = ivec2(gl_FragCoord.xy); |
| 10 | vec4 color = texelFetch(color_texture, coord, 0).abgr; | 10 | vec4 color = texelFetch(color_texture, coord, 0).abgr; |
| 11 | 11 | ||
| 12 | uvec4 bytes = uvec4(color * (exp2(8) - 1.0f)) << uvec4(24, 16, 8, 0); | 12 | float value = color.a * (color.r + color.g + color.b) / 3.0f; |
| 13 | uint depth_unorm = bytes.x | bytes.y | bytes.z | bytes.w; | ||
| 14 | 13 | ||
| 15 | float depth_float = uintBitsToFloat(depth_unorm); | 14 | gl_FragDepth = value; |
| 16 | |||
| 17 | gl_FragDepth = depth_float; | ||
| 18 | } | 15 | } |
diff --git a/src/video_core/host_shaders/convert_d32f_to_bgra8.frag b/src/video_core/host_shaders/convert_d32f_to_bgra8.frag deleted file mode 100644 index 789c3e078..000000000 --- a/src/video_core/host_shaders/convert_d32f_to_bgra8.frag +++ /dev/null | |||
| @@ -1,15 +0,0 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #version 450 | ||
| 5 | |||
| 6 | layout(binding = 0) uniform sampler2D depth_tex; | ||
| 7 | |||
| 8 | layout(location = 0) out vec4 color; | ||
| 9 | |||
| 10 | void main() { | ||
| 11 | ivec2 coord = ivec2(gl_FragCoord.xy); | ||
| 12 | float depth = texelFetch(depth_tex, coord, 0).r; | ||
| 13 | color = vec4(depth, depth, depth, 1.0); | ||
| 14 | color = color.bgra; // Swap color channels for BGRA format | ||
| 15 | } | ||