diff options
Diffstat (limited to 'source/blender/gpu/GPU_shader.h')
-rw-r--r-- | source/blender/gpu/GPU_shader.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/gpu/GPU_shader.h b/source/blender/gpu/GPU_shader.h index bb26f5d41a3..1fb0b7c1f6b 100644 --- a/source/blender/gpu/GPU_shader.h +++ b/source/blender/gpu/GPU_shader.h @@ -31,6 +31,7 @@ extern "C" { typedef struct GPUShader GPUShader; struct GPUTexture; struct GPUUniformBuffer; +struct GPUShaderInterface; /* GPU Shader * - only for fragment shaders now @@ -49,6 +50,11 @@ GPUShader *GPU_shader_create(const char *vertexcode, const char *libcode, const char *defines, const char *shader_name); +GPUShader *GPU_shader_create_from_python(const char *vertexcode, + const char *fragcode, + const char *geocode, + const char *libcode, + const char *defines); GPUShader *GPU_shader_create_ex(const char *vertexcode, const char *fragcode, const char *geocode, @@ -83,6 +89,8 @@ int GPU_shader_get_program(GPUShader *shader); void *GPU_shader_get_interface(GPUShader *shader); +void GPU_shader_set_srgb_uniform(const struct GPUShaderInterface *interface); + int GPU_shader_get_uniform(GPUShader *shader, const char *name); int GPU_shader_get_uniform_ensure(GPUShader *shader, const char *name); int GPU_shader_get_builtin_uniform(GPUShader *shader, int builtin); @@ -101,6 +109,8 @@ int GPU_shader_get_attribute(GPUShader *shader, const char *name); char *GPU_shader_get_binary(GPUShader *shader, uint *r_binary_format, int *r_binary_len); +void GPU_shader_set_framebuffer_srgb_target(int use_srgb_to_linear); + /* Builtin/Non-generated shaders */ typedef enum eGPUBuiltinShader { /* specialized drawing */ |