diff options
| author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-12-30 02:03:50 -0300 |
|---|---|---|
| committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-12-30 02:03:50 -0300 |
| commit | 21b18057f7035e1442be20667662efba911653df (patch) | |
| tree | d8d607ce81d0b78db2b1eeb07d82dbb65357f5c9 /src/video_core/host_shaders/vulkan_uint8.comp | |
| parent | 87ff58b1d713df6f4c292e56d1af20c0bfb9598f (diff) | |
host_shaders: Add Vulkan assembler compute shaders
Diffstat (limited to 'src/video_core/host_shaders/vulkan_uint8.comp')
| -rw-r--r-- | src/video_core/host_shaders/vulkan_uint8.comp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/video_core/host_shaders/vulkan_uint8.comp b/src/video_core/host_shaders/vulkan_uint8.comp new file mode 100644 index 000000000..ad74d7af9 --- /dev/null +++ b/src/video_core/host_shaders/vulkan_uint8.comp @@ -0,0 +1,24 @@ +// Copyright 2019 yuzu Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#version 460 core +#extension GL_EXT_shader_16bit_storage : require +#extension GL_EXT_shader_8bit_storage : require + +layout (local_size_x = 1024) in; + +layout (std430, set = 0, binding = 0) readonly buffer InputBuffer { + uint8_t input_indexes[]; +}; + +layout (std430, set = 0, binding = 1) writeonly buffer OutputBuffer { + uint16_t output_indexes[]; +}; + +void main() { + uint id = gl_GlobalInvocationID.x; + if (id < input_indexes.length()) { + output_indexes[id] = uint16_t(input_indexes[id]); + } +} |
