21 return "gpu_shader_text";
23 return "gpu_shader_keyframe_shape";
25 return "gpu_shader_simple_lighting";
27 return "gpu_shader_3D_image";
29 return "gpu_shader_3D_image_color";
31 return "gpu_shader_2D_checker";
33 return "gpu_shader_2D_diag_stripes";
35 return "gpu_shader_icon";
37 return "gpu_shader_2D_image_overlays_merge";
39 return "gpu_shader_2D_image_overlays_stereo_merge";
41 return "gpu_shader_2D_image_desaturate_color";
43 return "gpu_shader_2D_image_shuffle_color";
45 return "gpu_shader_2D_image_rect_color";
47 return "gpu_shader_icon_multi";
49 return "gpu_shader_3D_uniform_color";
51 return "gpu_shader_3D_flat_color";
53 return "gpu_shader_3D_smooth_color";
55 return "gpu_shader_3D_depth_only";
57 return "gpu_shader_3D_clipped_uniform_color";
59 return "gpu_shader_3D_polyline_uniform_color";
61 return "gpu_shader_3D_polyline_uniform_color_clipped";
63 return "gpu_shader_3D_polyline_flat_color";
65 return "gpu_shader_3D_polyline_smooth_color";
67 return "gpu_shader_3D_line_dashed_uniform_color";
69 return "gpu_shader_2D_point_uniform_size_uniform_color_aa";
71 return "gpu_shader_2D_point_uniform_size_uniform_color_outline_aa";
73 return "gpu_shader_3D_point_varying_size_varying_color";
75 return "gpu_shader_3D_point_uniform_size_uniform_color_aa";
77 return "gpu_shader_2D_area_borders";
79 return "gpu_shader_2D_widget_base";
81 return "gpu_shader_2D_widget_base_inst";
83 return "gpu_shader_2D_widget_shadow";
85 return "gpu_shader_2D_nodelink";
87 return "gpu_shader_2D_nodelink_inst";
89 return "gpu_shader_gpencil_stroke";
91 return "gpu_shader_sequencer_strips";
93 return "gpu_shader_sequencer_thumbs";
95 return "gpu_shader_index_2d_array_points";
97 return "gpu_shader_index_2d_array_lines";
99 return "gpu_shader_index_2d_array_tris";
110 return "gpu_shader_3D_uniform_color_clipped";
112 return "gpu_shader_3D_flat_color_clipped";
114 return "gpu_shader_3D_smooth_color_clipped";
116 return "gpu_shader_3D_depth_only_clipped";
118 return "gpu_shader_3D_line_dashed_uniform_color_clipped";
120 return "gpu_shader_3D_point_uniform_size_uniform_color_aa_clipped";
134# pragma GCC diagnostic push
135# pragma GCC diagnostic ignored "-Warray-bounds"
139# pragma GCC diagnostic pop
142 if (*sh_p ==
nullptr) {
#define BLI_assert_unreachable()
void GPU_shader_uniform_1i(GPUShader *sh, const char *name, int value)
GPUShader * GPU_shader_create_from_info_name(const char *info_name)
void GPU_shader_bind(GPUShader *shader)
void GPU_shader_free(GPUShader *shader)
#define GPU_SHADER_BUILTIN_LEN
@ GPU_SHADER_2D_DIAG_STRIPES
@ GPU_SHADER_SEQUENCER_THUMBS
@ GPU_SHADER_3D_SMOOTH_COLOR
@ GPU_SHADER_GPENCIL_STROKE
@ GPU_SHADER_INDEXBUF_TRIS
@ GPU_SHADER_2D_NODELINK_INST
@ GPU_SHADER_3D_LINE_DASHED_UNIFORM_COLOR
@ GPU_SHADER_3D_POLYLINE_SMOOTH_COLOR
@ GPU_SHADER_3D_POINT_VARYING_SIZE_VARYING_COLOR
@ GPU_SHADER_KEYFRAME_SHAPE
@ GPU_SHADER_3D_POLYLINE_UNIFORM_COLOR
@ GPU_SHADER_2D_POINT_UNIFORM_SIZE_UNIFORM_COLOR_AA
@ GPU_SHADER_SEQUENCER_STRIPS
@ GPU_SHADER_2D_IMAGE_DESATURATE_COLOR
@ GPU_SHADER_3D_DEPTH_ONLY
@ GPU_SHADER_INDEXBUF_LINES
@ GPU_SHADER_3D_CLIPPED_UNIFORM_COLOR
@ GPU_SHADER_3D_POINT_UNIFORM_SIZE_UNIFORM_COLOR_AA
@ GPU_SHADER_3D_UNIFORM_COLOR
@ GPU_SHADER_2D_IMAGE_RECT_COLOR
@ GPU_SHADER_3D_FLAT_COLOR
@ GPU_SHADER_2D_WIDGET_BASE_INST
@ GPU_SHADER_2D_IMAGE_SHUFFLE_COLOR
@ GPU_SHADER_2D_IMAGE_OVERLAYS_STEREO_MERGE
@ GPU_SHADER_2D_POINT_UNIFORM_SIZE_UNIFORM_COLOR_OUTLINE_AA
@ GPU_SHADER_3D_POLYLINE_FLAT_COLOR
@ GPU_SHADER_SIMPLE_LIGHTING
@ GPU_SHADER_2D_WIDGET_SHADOW
@ GPU_SHADER_2D_WIDGET_BASE
@ GPU_SHADER_2D_AREA_BORDERS
@ GPU_SHADER_3D_POLYLINE_CLIPPED_UNIFORM_COLOR
@ GPU_SHADER_INDEXBUF_POINTS
@ GPU_SHADER_2D_IMAGE_OVERLAYS_MERGE
@ GPU_SHADER_3D_IMAGE_COLOR
#define GPU_SHADER_CFG_LEN
struct GPUShader GPUShader
static const char * builtin_shader_create_info_name(eGPUBuiltinShader shader)
GPUShader * GPU_shader_get_builtin_shader_with_config(eGPUBuiltinShader shader, eGPUShaderConfig sh_cfg)
static GPUShader * builtin_shaders[GPU_SHADER_CFG_LEN][GPU_SHADER_BUILTIN_LEN]
GPUShader * GPU_shader_get_builtin_shader(eGPUBuiltinShader shader)
void GPU_shader_free_builtin_shaders()
static const char * builtin_shader_create_info_name_clipped(eGPUBuiltinShader shader)