diff options
| author | 2023-01-12 22:42:56 +0800 | |
|---|---|---|
| committer | 2023-01-28 12:53:05 +0800 | |
| commit | 818631a412dde27dba1b34ab0858c8d1f29ea19c (patch) | |
| tree | 8414eb07600d9e8b2ec8db6bda1218d453afef40 /src/video_core/host_shaders | |
| parent | Merge pull request #9677 from Morph1984/sleep-one (diff) | |
| download | yuzu-818631a412dde27dba1b34ab0858c8d1f29ea19c.tar.gz yuzu-818631a412dde27dba1b34ab0858c8d1f29ea19c.tar.xz yuzu-818631a412dde27dba1b34ab0858c8d1f29ea19c.zip | |
video_core: Implement vulkan clear specified channel
Diffstat (limited to 'src/video_core/host_shaders')
| -rw-r--r-- | src/video_core/host_shaders/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | src/video_core/host_shaders/vulkan_color_clear.frag | 14 | ||||
| -rw-r--r-- | src/video_core/host_shaders/vulkan_color_clear.vert | 10 |
3 files changed, 26 insertions, 0 deletions
diff --git a/src/video_core/host_shaders/CMakeLists.txt b/src/video_core/host_shaders/CMakeLists.txt index dad7b07d4..52cd5bb81 100644 --- a/src/video_core/host_shaders/CMakeLists.txt +++ b/src/video_core/host_shaders/CMakeLists.txt | |||
| @@ -45,6 +45,8 @@ set(SHADER_FILES | |||
| 45 | smaa_neighborhood_blending.vert | 45 | smaa_neighborhood_blending.vert |
| 46 | smaa_neighborhood_blending.frag | 46 | smaa_neighborhood_blending.frag |
| 47 | vulkan_blit_depth_stencil.frag | 47 | vulkan_blit_depth_stencil.frag |
| 48 | vulkan_color_clear.frag | ||
| 49 | vulkan_color_clear.vert | ||
| 48 | vulkan_fidelityfx_fsr_easu_fp16.comp | 50 | vulkan_fidelityfx_fsr_easu_fp16.comp |
| 49 | vulkan_fidelityfx_fsr_easu_fp32.comp | 51 | vulkan_fidelityfx_fsr_easu_fp32.comp |
| 50 | vulkan_fidelityfx_fsr_rcas_fp16.comp | 52 | vulkan_fidelityfx_fsr_rcas_fp16.comp |
diff --git a/src/video_core/host_shaders/vulkan_color_clear.frag b/src/video_core/host_shaders/vulkan_color_clear.frag new file mode 100644 index 000000000..617bf01e1 --- /dev/null +++ b/src/video_core/host_shaders/vulkan_color_clear.frag | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #version 460 core | ||
| 5 | |||
| 6 | layout (push_constant) uniform PushConstants { | ||
| 7 | vec4 clear_color; | ||
| 8 | }; | ||
| 9 | |||
| 10 | layout(location = 0) out vec4 color; | ||
| 11 | |||
| 12 | void main() { | ||
| 13 | color = clear_color; | ||
| 14 | } | ||
diff --git a/src/video_core/host_shaders/vulkan_color_clear.vert b/src/video_core/host_shaders/vulkan_color_clear.vert new file mode 100644 index 000000000..d85883141 --- /dev/null +++ b/src/video_core/host_shaders/vulkan_color_clear.vert | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #version 460 core | ||
| 5 | |||
| 6 | void main() { | ||
| 7 | float x = float((gl_VertexIndex & 1) << 2); | ||
| 8 | float y = float((gl_VertexIndex & 2) << 1); | ||
| 9 | gl_Position = vec4(x - 1.0, y - 1.0, 0.0, 1.0); | ||
| 10 | } | ||