Blender  V3.3
Classes | Macros | Functions | Variables
gpu_shader_builtin.c File Reference
#include "BLI_utildefines.h"
#include "GPU_shader.h"

Go to the source code of this file.

Classes

struct  GPUShaderStages
 

Macros

#define MAX_DEFINE_LENGTH   256
 
#define MAX_EXT_DEFINE_LENGTH   512
 

Functions

GPUShaderGPU_shader_get_builtin_shader_with_config (eGPUBuiltinShader shader, eGPUShaderConfig sh_cfg)
 
GPUShaderGPU_shader_get_builtin_shader (eGPUBuiltinShader shader)
 
void GPU_shader_free_builtin_shaders (void)
 

Variables

char datatoc_gpu_shader_depth_only_frag_glsl []
 
char datatoc_gpu_shader_uniform_color_frag_glsl []
 
char datatoc_gpu_shader_checker_frag_glsl []
 
char datatoc_gpu_shader_diag_stripes_frag_glsl []
 
char datatoc_gpu_shader_simple_lighting_frag_glsl []
 
char datatoc_gpu_shader_flat_color_frag_glsl []
 
char datatoc_gpu_shader_flat_color_alpha_test_0_frag_glsl []
 
char datatoc_gpu_shader_flat_id_frag_glsl []
 
char datatoc_gpu_shader_2D_area_borders_vert_glsl []
 
char datatoc_gpu_shader_2D_area_borders_frag_glsl []
 
char datatoc_gpu_shader_2D_vert_glsl []
 
char datatoc_gpu_shader_2D_flat_color_vert_glsl []
 
char datatoc_gpu_shader_2D_smooth_color_uniform_alpha_vert_glsl []
 
char datatoc_gpu_shader_2D_smooth_color_vert_glsl []
 
char datatoc_gpu_shader_2D_smooth_color_frag_glsl []
 
char datatoc_gpu_shader_2D_image_vert_glsl []
 
char datatoc_gpu_shader_2D_image_rect_vert_glsl []
 
char datatoc_gpu_shader_2D_image_multi_rect_vert_glsl []
 
char datatoc_gpu_shader_2D_widget_base_vert_glsl []
 
char datatoc_gpu_shader_2D_widget_base_frag_glsl []
 
char datatoc_gpu_shader_2D_widget_shadow_vert_glsl []
 
char datatoc_gpu_shader_2D_widget_shadow_frag_glsl []
 
char datatoc_gpu_shader_2D_nodelink_frag_glsl []
 
char datatoc_gpu_shader_2D_nodelink_vert_glsl []
 
char datatoc_gpu_shader_3D_image_vert_glsl []
 
char datatoc_gpu_shader_image_frag_glsl []
 
char datatoc_gpu_shader_image_overlays_merge_frag_glsl []
 
char datatoc_gpu_shader_image_overlays_stereo_merge_frag_glsl []
 
char datatoc_gpu_shader_image_color_frag_glsl []
 
char datatoc_gpu_shader_image_desaturate_frag_glsl []
 
char datatoc_gpu_shader_image_modulate_alpha_frag_glsl []
 
char datatoc_gpu_shader_image_varying_color_frag_glsl []
 
char datatoc_gpu_shader_image_shuffle_color_frag_glsl []
 
char datatoc_gpu_shader_3D_vert_glsl []
 
char datatoc_gpu_shader_3D_normal_vert_glsl []
 
char datatoc_gpu_shader_3D_flat_color_vert_glsl []
 
char datatoc_gpu_shader_3D_polyline_frag_glsl []
 
char datatoc_gpu_shader_3D_polyline_geom_glsl []
 
char datatoc_gpu_shader_3D_polyline_vert_glsl []
 
char datatoc_gpu_shader_3D_smooth_color_vert_glsl []
 
char datatoc_gpu_shader_3D_smooth_color_frag_glsl []
 
char datatoc_gpu_shader_3D_passthrough_vert_glsl []
 
char datatoc_gpu_shader_3D_clipped_uniform_color_vert_glsl []
 
char datatoc_gpu_shader_instance_variying_size_variying_color_vert_glsl []
 
char datatoc_gpu_shader_point_uniform_color_aa_frag_glsl []
 
char datatoc_gpu_shader_point_uniform_color_outline_aa_frag_glsl []
 
char datatoc_gpu_shader_point_varying_color_varying_outline_aa_frag_glsl []
 
char datatoc_gpu_shader_point_varying_color_frag_glsl []
 
char datatoc_gpu_shader_3D_point_fixed_size_varying_color_vert_glsl []
 
char datatoc_gpu_shader_3D_point_varying_size_varying_color_vert_glsl []
 
char datatoc_gpu_shader_3D_point_uniform_size_aa_vert_glsl []
 
char datatoc_gpu_shader_2D_point_uniform_size_aa_vert_glsl []
 
char datatoc_gpu_shader_2D_point_uniform_size_outline_aa_vert_glsl []
 
char datatoc_gpu_shader_2D_line_dashed_uniform_color_vert_glsl []
 
char datatoc_gpu_shader_2D_line_dashed_frag_glsl []
 
char datatoc_gpu_shader_3D_line_dashed_uniform_color_vert_glsl []
 
char datatoc_gpu_shader_text_vert_glsl []
 
char datatoc_gpu_shader_text_frag_glsl []
 
char datatoc_gpu_shader_keyframe_shape_vert_glsl []
 
char datatoc_gpu_shader_keyframe_shape_frag_glsl []
 
char datatoc_gpu_shader_gpencil_stroke_vert_glsl []
 
char datatoc_gpu_shader_gpencil_stroke_frag_glsl []
 
char datatoc_gpu_shader_gpencil_stroke_geom_glsl []
 
char datatoc_gpu_shader_cfg_world_clip_lib_glsl []
 
char datatoc_gpu_shader_colorspace_lib_glsl []
 
const struct GPUShaderConfigData GPU_shader_cfg_data [GPU_SHADER_CFG_LEN]
 
static GPUShaderbuiltin_shaders [GPU_SHADER_CFG_LEN][GPU_SHADER_BUILTIN_LEN] = {{NULL}}
 
static const GPUShaderStages builtin_shader_stages [GPU_SHADER_BUILTIN_LEN]
 

Macro Definition Documentation

◆ MAX_DEFINE_LENGTH

#define MAX_DEFINE_LENGTH   256

Definition at line 13 of file gpu_shader_builtin.c.

◆ MAX_EXT_DEFINE_LENGTH

#define MAX_EXT_DEFINE_LENGTH   512

Definition at line 14 of file gpu_shader_builtin.c.

Function Documentation

◆ GPU_shader_free_builtin_shaders()

void GPU_shader_free_builtin_shaders ( void  )

◆ GPU_shader_get_builtin_shader()

GPUShader* GPU_shader_get_builtin_shader ( eGPUBuiltinShader  shader)

◆ GPU_shader_get_builtin_shader_with_config()

GPUShader* GPU_shader_get_builtin_shader_with_config ( eGPUBuiltinShader  shader,
eGPUShaderConfig  sh_cfg 
)

Variable Documentation

◆ builtin_shader_stages

const GPUShaderStages builtin_shader_stages[GPU_SHADER_BUILTIN_LEN]
static

Definition at line 121 of file gpu_shader_builtin.c.

Referenced by GPU_shader_get_builtin_shader_with_config().

◆ builtin_shaders

GPUShader* builtin_shaders[GPU_SHADER_CFG_LEN][GPU_SHADER_BUILTIN_LEN] = {{NULL}}
static

◆ datatoc_gpu_shader_2D_area_borders_frag_glsl

char datatoc_gpu_shader_2D_area_borders_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_area_borders_vert_glsl

char datatoc_gpu_shader_2D_area_borders_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_flat_color_vert_glsl

char datatoc_gpu_shader_2D_flat_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_image_multi_rect_vert_glsl

char datatoc_gpu_shader_2D_image_multi_rect_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_image_rect_vert_glsl

char datatoc_gpu_shader_2D_image_rect_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_image_vert_glsl

char datatoc_gpu_shader_2D_image_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_line_dashed_frag_glsl

char datatoc_gpu_shader_2D_line_dashed_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_line_dashed_uniform_color_vert_glsl

char datatoc_gpu_shader_2D_line_dashed_uniform_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_nodelink_frag_glsl

char datatoc_gpu_shader_2D_nodelink_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_nodelink_vert_glsl

char datatoc_gpu_shader_2D_nodelink_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_point_uniform_size_aa_vert_glsl

char datatoc_gpu_shader_2D_point_uniform_size_aa_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_point_uniform_size_outline_aa_vert_glsl

char datatoc_gpu_shader_2D_point_uniform_size_outline_aa_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_smooth_color_frag_glsl

char datatoc_gpu_shader_2D_smooth_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_smooth_color_uniform_alpha_vert_glsl

char datatoc_gpu_shader_2D_smooth_color_uniform_alpha_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_smooth_color_vert_glsl

char datatoc_gpu_shader_2D_smooth_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_vert_glsl

char datatoc_gpu_shader_2D_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_widget_base_frag_glsl

char datatoc_gpu_shader_2D_widget_base_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_widget_base_vert_glsl

char datatoc_gpu_shader_2D_widget_base_vert_glsl[]
extern

◆ datatoc_gpu_shader_2D_widget_shadow_frag_glsl

char datatoc_gpu_shader_2D_widget_shadow_frag_glsl[]
extern

◆ datatoc_gpu_shader_2D_widget_shadow_vert_glsl

char datatoc_gpu_shader_2D_widget_shadow_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_clipped_uniform_color_vert_glsl

char datatoc_gpu_shader_3D_clipped_uniform_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_flat_color_vert_glsl

char datatoc_gpu_shader_3D_flat_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_image_vert_glsl

char datatoc_gpu_shader_3D_image_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_line_dashed_uniform_color_vert_glsl

char datatoc_gpu_shader_3D_line_dashed_uniform_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_normal_vert_glsl

char datatoc_gpu_shader_3D_normal_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_passthrough_vert_glsl

char datatoc_gpu_shader_3D_passthrough_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_point_fixed_size_varying_color_vert_glsl

char datatoc_gpu_shader_3D_point_fixed_size_varying_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_point_uniform_size_aa_vert_glsl

char datatoc_gpu_shader_3D_point_uniform_size_aa_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_point_varying_size_varying_color_vert_glsl

char datatoc_gpu_shader_3D_point_varying_size_varying_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_polyline_frag_glsl

char datatoc_gpu_shader_3D_polyline_frag_glsl[]
extern

◆ datatoc_gpu_shader_3D_polyline_geom_glsl

char datatoc_gpu_shader_3D_polyline_geom_glsl[]
extern

◆ datatoc_gpu_shader_3D_polyline_vert_glsl

char datatoc_gpu_shader_3D_polyline_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_smooth_color_frag_glsl

char datatoc_gpu_shader_3D_smooth_color_frag_glsl[]
extern

Definition at line 23 of file draw_shader.cc.

◆ datatoc_gpu_shader_3D_smooth_color_vert_glsl

char datatoc_gpu_shader_3D_smooth_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_3D_vert_glsl

char datatoc_gpu_shader_3D_vert_glsl[]
extern

◆ datatoc_gpu_shader_cfg_world_clip_lib_glsl

char datatoc_gpu_shader_cfg_world_clip_lib_glsl[]
extern

◆ datatoc_gpu_shader_checker_frag_glsl

char datatoc_gpu_shader_checker_frag_glsl[]
extern

◆ datatoc_gpu_shader_colorspace_lib_glsl

char datatoc_gpu_shader_colorspace_lib_glsl[]
extern

Definition at line 26 of file gpu_shader.cc.

Referenced by GPU_shader_create_from_python().

◆ datatoc_gpu_shader_depth_only_frag_glsl

char datatoc_gpu_shader_depth_only_frag_glsl[]
extern

◆ datatoc_gpu_shader_diag_stripes_frag_glsl

char datatoc_gpu_shader_diag_stripes_frag_glsl[]
extern

◆ datatoc_gpu_shader_flat_color_alpha_test_0_frag_glsl

char datatoc_gpu_shader_flat_color_alpha_test_0_frag_glsl[]
extern

◆ datatoc_gpu_shader_flat_color_frag_glsl

char datatoc_gpu_shader_flat_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_flat_id_frag_glsl

char datatoc_gpu_shader_flat_id_frag_glsl[]
extern

◆ datatoc_gpu_shader_gpencil_stroke_frag_glsl

char datatoc_gpu_shader_gpencil_stroke_frag_glsl[]
extern

◆ datatoc_gpu_shader_gpencil_stroke_geom_glsl

char datatoc_gpu_shader_gpencil_stroke_geom_glsl[]
extern

◆ datatoc_gpu_shader_gpencil_stroke_vert_glsl

char datatoc_gpu_shader_gpencil_stroke_vert_glsl[]
extern

◆ datatoc_gpu_shader_image_color_frag_glsl

char datatoc_gpu_shader_image_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_desaturate_frag_glsl

char datatoc_gpu_shader_image_desaturate_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_frag_glsl

char datatoc_gpu_shader_image_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_modulate_alpha_frag_glsl

char datatoc_gpu_shader_image_modulate_alpha_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_overlays_merge_frag_glsl

char datatoc_gpu_shader_image_overlays_merge_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_overlays_stereo_merge_frag_glsl

char datatoc_gpu_shader_image_overlays_stereo_merge_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_shuffle_color_frag_glsl

char datatoc_gpu_shader_image_shuffle_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_image_varying_color_frag_glsl

char datatoc_gpu_shader_image_varying_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_instance_variying_size_variying_color_vert_glsl

char datatoc_gpu_shader_instance_variying_size_variying_color_vert_glsl[]
extern

◆ datatoc_gpu_shader_keyframe_shape_frag_glsl

char datatoc_gpu_shader_keyframe_shape_frag_glsl[]
extern

◆ datatoc_gpu_shader_keyframe_shape_vert_glsl

char datatoc_gpu_shader_keyframe_shape_vert_glsl[]
extern

◆ datatoc_gpu_shader_point_uniform_color_aa_frag_glsl

char datatoc_gpu_shader_point_uniform_color_aa_frag_glsl[]
extern

◆ datatoc_gpu_shader_point_uniform_color_outline_aa_frag_glsl

char datatoc_gpu_shader_point_uniform_color_outline_aa_frag_glsl[]
extern

◆ datatoc_gpu_shader_point_varying_color_frag_glsl

char datatoc_gpu_shader_point_varying_color_frag_glsl[]
extern

◆ datatoc_gpu_shader_point_varying_color_varying_outline_aa_frag_glsl

char datatoc_gpu_shader_point_varying_color_varying_outline_aa_frag_glsl[]
extern

◆ datatoc_gpu_shader_simple_lighting_frag_glsl

char datatoc_gpu_shader_simple_lighting_frag_glsl[]
extern

◆ datatoc_gpu_shader_text_frag_glsl

char datatoc_gpu_shader_text_frag_glsl[]
extern

◆ datatoc_gpu_shader_text_vert_glsl

char datatoc_gpu_shader_text_vert_glsl[]
extern

◆ datatoc_gpu_shader_uniform_color_frag_glsl

char datatoc_gpu_shader_uniform_color_frag_glsl[]
extern

◆ GPU_shader_cfg_data

const struct GPUShaderConfigData GPU_shader_cfg_data[GPU_SHADER_CFG_LEN]
Initial value:
= {
{
.lib = "",
.def = "#define blender_srgb_to_framebuffer_space(a) a\n",
},
{
.def = "#define USE_WORLD_CLIP_PLANES\n"
"#define blender_srgb_to_framebuffer_space(a) a\n",
},
}
@ GPU_SHADER_CFG_DEFAULT
Definition: GPU_shader.h:365
@ GPU_SHADER_CFG_CLIPPED
Definition: GPU_shader.h:366
char datatoc_gpu_shader_cfg_world_clip_lib_glsl[]

Definition at line 89 of file gpu_shader_builtin.c.