Blender V5.0
gpu_shader_test_infos.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2022 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#ifdef GPU_SHADER
10# pragma once
11# include "gpu_shader_compat.hh"
12
13# include "GPU_shader_shared.hh"
14#endif
15
18
19GPU_SHADER_CREATE_INFO(gpu_shader_test)
20TYPEDEF_SOURCE("GPU_shader_shared.hh")
21FRAGMENT_OUT(0, uint4, out_test)
22ADDITIONAL_INFO(gpu_fullscreen)
24
25GPU_SHADER_CREATE_INFO(gpu_math_test)
26FRAGMENT_SOURCE("gpu_math_test.glsl")
27ADDITIONAL_INFO(gpu_shader_test)
30
31GPU_SHADER_CREATE_INFO(gpu_compute_1d_test)
33IMAGE(1, SFLOAT_32_32_32_32, write, image1D, img_output)
34COMPUTE_SOURCE("gpu_compute_1d_test.glsl")
37
38GPU_SHADER_CREATE_INFO(gpu_compute_2d_test)
40IMAGE(1, SFLOAT_32_32_32_32, write, image2D, img_output)
41COMPUTE_SOURCE("gpu_compute_2d_test.glsl")
44
45GPU_SHADER_CREATE_INFO(gpu_compute_ibo_test)
47STORAGE_BUF(0, write, uint, out_indices[])
48COMPUTE_SOURCE("gpu_compute_ibo_test.glsl")
51
52GPU_SHADER_CREATE_INFO(gpu_compute_vbo_test)
54STORAGE_BUF(0, write, vec4, out_positions[])
55COMPUTE_SOURCE("gpu_compute_vbo_test.glsl")
58
59GPU_SHADER_CREATE_INFO(gpu_compute_ssbo_test)
61STORAGE_BUF(0, write, int, data_out[])
62COMPUTE_SOURCE("gpu_compute_ssbo_test.glsl")
65
66GPU_SHADER_CREATE_INFO(gpu_compute_ssbo_binding_test)
68STORAGE_BUF(0, write, int, data0[])
69STORAGE_BUF(1, write, int, data1[])
70COMPUTE_SOURCE("gpu_compute_dummy_test.glsl")
73
74/* Push constants. */
75GPU_SHADER_CREATE_INFO(gpu_push_constants_base_test)
77STORAGE_BUF(0, write, float, data_out[])
78COMPUTE_SOURCE("gpu_push_constants_test.glsl")
80
81GPU_SHADER_CREATE_INFO(gpu_push_constants_test)
82ADDITIONAL_INFO(gpu_push_constants_base_test)
83PUSH_CONSTANT(float, float_in)
84PUSH_CONSTANT(float2, vec2_in)
85PUSH_CONSTANT(float3, vec3_in)
86PUSH_CONSTANT(float4, vec4_in)
89
90/* Push constants size test. */
91GPU_SHADER_CREATE_INFO(gpu_push_constants_128bytes_test)
92ADDITIONAL_INFO(gpu_push_constants_test)
93PUSH_CONSTANT_ARRAY(float, filler, 20)
96
97GPU_SHADER_CREATE_INFO(gpu_push_constants_256bytes_test)
98ADDITIONAL_INFO(gpu_push_constants_128bytes_test)
99PUSH_CONSTANT_ARRAY(float, filler2, 32)
102
103GPU_SHADER_CREATE_INFO(gpu_push_constants_512bytes_test)
104ADDITIONAL_INFO(gpu_push_constants_256bytes_test)
105PUSH_CONSTANT_ARRAY(float, filler3, 64)
108
109GPU_SHADER_CREATE_INFO(gpu_push_constants_8192bytes_test)
110ADDITIONAL_INFO(gpu_push_constants_512bytes_test)
111PUSH_CONSTANT_ARRAY(float, filler4, 1920)
114
115GPU_SHADER_CREATE_INFO(gpu_buffer_texture_test)
117SAMPLER(0, samplerBuffer, bufferTexture)
118STORAGE_BUF(0, write, float, data_out[])
119COMPUTE_SOURCE("gpu_buffer_texture_test.glsl")
122
123/* Specialization constants. */
124
125GPU_SHADER_CREATE_INFO(gpu_specialization_constants_base_test)
126STORAGE_BUF(0, write, int, data_out[])
127SPECIALIZATION_CONSTANT(float, float_in, 2)
128SPECIALIZATION_CONSTANT(uint, uint_in, 3)
129SPECIALIZATION_CONSTANT(int, int_in, 4)
130SPECIALIZATION_CONSTANT(bool, bool_in, true)
132
133GPU_SHADER_CREATE_INFO(gpu_compute_specialization_test)
135ADDITIONAL_INFO(gpu_specialization_constants_base_test)
136COMPUTE_SOURCE("gpu_specialization_test.glsl")
139
140GPU_SHADER_CREATE_INFO(gpu_graphic_specialization_test)
141ADDITIONAL_INFO(gpu_specialization_constants_base_test)
142VERTEX_SOURCE("gpu_specialization_test.glsl")
143FRAGMENT_SOURCE("gpu_specialization_test.glsl")
146
147/* EEVEE test. */
148
149GPU_SHADER_CREATE_INFO(eevee_shadow_test)
150FRAGMENT_SOURCE("eevee_shadow_test.glsl")
151TYPEDEF_SOURCE("eevee_defines.hh")
152TYPEDEF_SOURCE("eevee_shadow_shared.hh")
153ADDITIONAL_INFO(gpu_shader_test)
156
157GPU_SHADER_CREATE_INFO(eevee_occupancy_test)
158FRAGMENT_SOURCE("eevee_occupancy_test.glsl")
159TYPEDEF_SOURCE("eevee_defines.hh")
160ADDITIONAL_INFO(gpu_shader_test)
163
164GPU_SHADER_CREATE_INFO(eevee_gbuffer_normal_test)
165FRAGMENT_SOURCE("eevee_gbuffer_normal_test.glsl")
166TYPEDEF_SOURCE("eevee_defines.hh")
167ADDITIONAL_INFO(gpu_shader_test)
170
171GPU_SHADER_CREATE_INFO(eevee_gbuffer_closure_test)
172FRAGMENT_SOURCE("eevee_gbuffer_closure_test.glsl")
173TYPEDEF_SOURCE("eevee_defines.hh")
174ADDITIONAL_INFO(gpu_shader_test)
unsigned int uint
return true
vec4(float_to_float2(value.x), vec2(0.0f))") DEFINE_VALUE("CONVERT_EXPRESSION(value)"
#define GPU_SHADER_CREATE_INFO(_info)
#define GPU_SHADER_CREATE_END()
#define TYPEDEF_SOURCE(filename)
#define PUSH_CONSTANT_ARRAY(type, name, array_size)
#define SAMPLER(slot, type, name)
#define FRAGMENT_SOURCE(filename)
#define SPECIALIZATION_CONSTANT(type, name, default_value)
#define ADDITIONAL_INFO(info_name)
#define PUSH_CONSTANT(type, name)
#define FRAGMENT_OUT(slot, type, name)
#define STORAGE_BUF(slot, qualifiers, type_name, name)
#define VERTEX_SOURCE(filename)
#define LOCAL_GROUP_SIZE(...)
#define IMAGE(slot, format, qualifiers, type, name)
#define COMPUTE_SOURCE(filename)
#define DO_STATIC_COMPILATION()
ImageBase< float, 2 > image2D
ImageBase< float, 1 > image1D
SamplerBase< float, 1 > samplerBuffer