GPU Shader (gpu.shader)¶
This module provides access to GPUShader internal functions.
Built-in shaders¶
All built-in shaders have the mat4 ModelViewProjectionMatrix
uniform.
The value of it can only be modified using the gpu.matrix
module.
- 2D_UNIFORM_COLOR:
attributes: vec3 pos uniforms: vec4 color
- 2D_FLAT_COLOR:
attributes: vec3 pos, vec4 color uniforms: -
- 2D_SMOOTH_COLOR:
attributes: vec3 pos, vec4 color uniforms: -
- 2D_IMAGE:
attributes: vec3 pos, vec2 texCoord uniforms: sampler2D image
- 3D_UNIFORM_COLOR:
attributes: vec3 pos uniforms: vec4 color
- 3D_FLAT_COLOR:
attributes: vec3 pos, vec4 color uniforms: -
- 3D_SMOOTH_COLOR:
attributes: vec3 pos, vec4 color uniforms: -
-
gpu.shader.
code_from_builtin
(shader_name)¶ Exposes the internal shader code for query.
- Parameters
shader_name (str) – One of these builtin shader names: { ‘2D_UNIFORM_COLOR’, ‘2D_FLAT_COLOR’, ‘2D_SMOOTH_COLOR’, ‘2D_IMAGE’, ‘3D_UNIFORM_COLOR’, ‘3D_FLAT_COLOR’, ‘3D_SMOOTH_COLOR’}
- Returns
Vertex, fragment and geometry shader codes.
- Return type
dict
-
gpu.shader.
from_builtin
(shader_name)¶ Shaders that are embedded in the blender internal code. They all read the uniform ‘mat4 ModelViewProjectionMatrix’, which can be edited by the ‘gpu.matrix’ module. For more details, you can check the shader code with the function ‘gpu.shader.code_from_builtin’;
- Parameters
shader_name (str) – One of these builtin shader names: { ‘2D_UNIFORM_COLOR’, ‘2D_FLAT_COLOR’, ‘2D_SMOOTH_COLOR’, ‘2D_IMAGE’, ‘3D_UNIFORM_COLOR’, ‘3D_FLAT_COLOR’, ‘3D_SMOOTH_COLOR’}
- Returns
Shader object corresponding to the given name.
- Return type
bpy.types.GPUShader
-
gpu.shader.
unbind
()¶ Unbind the bound shader object.