Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 1 | #version 310 es |
Ben Clayton | f1f56b2 | 2023-03-09 19:58:23 +0000 | [diff] [blame] | 2 | precision highp float; |
Stephen White | ca9f386 | 2024-02-07 18:08:23 +0000 | [diff] [blame] | 3 | precision highp int; |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 4 | |
Natalie Chouinard | 6ee6330 | 2024-06-25 20:45:30 +0000 | [diff] [blame] | 5 | layout(binding = 0, std430) buffer prevent_dce_block_ssbo { |
| 6 | vec4 inner; |
| 7 | } prevent_dce; |
| 8 | |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 9 | uniform highp sampler2DArray arg_0_1; |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 10 | vec4 textureLoad_87be85() { |
Ben Clayton | 4b60615 | 2022-11-04 17:06:03 +0000 | [diff] [blame] | 11 | ivec2 arg_1 = ivec2(1); |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 12 | int arg_2 = 1; |
Ben Clayton | c3adc78 | 2022-10-25 13:08:45 +0000 | [diff] [blame] | 13 | int arg_3 = 1; |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 14 | vec4 res = texelFetch(arg_0_1, ivec3(arg_1, arg_2), arg_3); |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 15 | return res; |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 16 | } |
| 17 | |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 18 | struct VertexOutput { |
| 19 | vec4 pos; |
| 20 | vec4 prevent_dce; |
| 21 | }; |
| 22 | |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 23 | void fragment_main() { |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 24 | prevent_dce.inner = textureLoad_87be85(); |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 25 | } |
| 26 | |
| 27 | void main() { |
| 28 | fragment_main(); |
| 29 | return; |
| 30 | } |
| 31 | #version 310 es |
| 32 | |
Natalie Chouinard | 6ee6330 | 2024-06-25 20:45:30 +0000 | [diff] [blame] | 33 | layout(binding = 0, std430) buffer prevent_dce_block_ssbo { |
| 34 | vec4 inner; |
| 35 | } prevent_dce; |
| 36 | |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 37 | uniform highp sampler2DArray arg_0_1; |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 38 | vec4 textureLoad_87be85() { |
Ben Clayton | 4b60615 | 2022-11-04 17:06:03 +0000 | [diff] [blame] | 39 | ivec2 arg_1 = ivec2(1); |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 40 | int arg_2 = 1; |
Ben Clayton | c3adc78 | 2022-10-25 13:08:45 +0000 | [diff] [blame] | 41 | int arg_3 = 1; |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 42 | vec4 res = texelFetch(arg_0_1, ivec3(arg_1, arg_2), arg_3); |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 43 | return res; |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 44 | } |
| 45 | |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 46 | struct VertexOutput { |
| 47 | vec4 pos; |
| 48 | vec4 prevent_dce; |
| 49 | }; |
| 50 | |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 51 | void compute_main() { |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 52 | prevent_dce.inner = textureLoad_87be85(); |
Ben Clayton | c0af5c5 | 2022-06-02 14:36:10 +0000 | [diff] [blame] | 53 | } |
| 54 | |
| 55 | layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; |
| 56 | void main() { |
| 57 | compute_main(); |
| 58 | return; |
| 59 | } |
Natalie Chouinard | e902718 | 2024-06-13 18:50:19 +0000 | [diff] [blame] | 60 | #version 310 es |
| 61 | |
| 62 | layout(location = 0) flat out vec4 prevent_dce_1; |
| 63 | uniform highp sampler2DArray arg_0_1; |
| 64 | vec4 textureLoad_87be85() { |
| 65 | ivec2 arg_1 = ivec2(1); |
| 66 | int arg_2 = 1; |
| 67 | int arg_3 = 1; |
| 68 | vec4 res = texelFetch(arg_0_1, ivec3(arg_1, arg_2), arg_3); |
| 69 | return res; |
| 70 | } |
| 71 | |
| 72 | struct VertexOutput { |
| 73 | vec4 pos; |
| 74 | vec4 prevent_dce; |
| 75 | }; |
| 76 | |
| 77 | VertexOutput vertex_main() { |
| 78 | VertexOutput tint_symbol = VertexOutput(vec4(0.0f, 0.0f, 0.0f, 0.0f), vec4(0.0f, 0.0f, 0.0f, 0.0f)); |
| 79 | tint_symbol.pos = vec4(0.0f); |
| 80 | tint_symbol.prevent_dce = textureLoad_87be85(); |
| 81 | return tint_symbol; |
| 82 | } |
| 83 | |
| 84 | void main() { |
| 85 | gl_PointSize = 1.0; |
| 86 | VertexOutput inner_result = vertex_main(); |
| 87 | gl_Position = inner_result.pos; |
| 88 | prevent_dce_1 = inner_result.prevent_dce; |
| 89 | gl_Position.y = -(gl_Position.y); |
| 90 | gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w); |
| 91 | return; |
| 92 | } |