Changeset View
Changeset View
Standalone View
Standalone View
source/blender/gpu/GPU_shader.h
| Context not available. | |||||
| GPU_SHADER_FLAGS_NONE = 0, | GPU_SHADER_FLAGS_NONE = 0, | ||||
| GPU_SHADER_FLAGS_SPECIAL_OPENSUBDIV = (1 << 0), | GPU_SHADER_FLAGS_SPECIAL_OPENSUBDIV = (1 << 0), | ||||
| GPU_SHADER_FLAGS_NEW_SHADING = (1 << 1), | GPU_SHADER_FLAGS_NEW_SHADING = (1 << 1), | ||||
| GPU_SHADER_FLAGS_SPECIAL_INSTANCING = (1 << 2), | |||||
| GPU_SHADER_FLAGS_SPECIAL_RESET_LINE = (1 << 3), | |||||
| }; | }; | ||||
| GPUShader *GPU_shader_create( | GPUShader *GPU_shader_create( | ||||
| Context not available. | |||||
| const char *defines, | const char *defines, | ||||
| int input, int output, int number, | int input, int output, int number, | ||||
| const int flags); | const int flags); | ||||
| char *GPU_shader_validate(GPUShader *shader); | |||||
| void GPU_shader_free(GPUShader *shader); | void GPU_shader_free(GPUShader *shader); | ||||
| void GPU_shader_bind(GPUShader *shader); | void GPU_shader_bind(GPUShader *shader); | ||||
| void GPU_shader_unbind(void); | void GPU_shader_unbind(void); | ||||
| int GPU_shader_program(GPUShader *shader); | |||||
| void *GPU_shader_get_interface(GPUShader *shader); | void *GPU_shader_get_interface(GPUShader *shader); | ||||
| void GPU_shader_set_interface(GPUShader *shader, void *interface); | void GPU_shader_set_interface(GPUShader *shader, void *interface); | ||||
| int GPU_shader_get_uniform(GPUShader *shader, const char *name); | int GPU_shader_get_uniform(GPUShader *shader, const char *name); | ||||
| Context not available. | |||||
| void GPU_shader_uniform_texture(GPUShader *shader, int location, struct GPUTexture *tex); | void GPU_shader_uniform_texture(GPUShader *shader, int location, struct GPUTexture *tex); | ||||
| void GPU_shader_uniform_int(GPUShader *shader, int location, int value); | void GPU_shader_uniform_int(GPUShader *shader, int location, int value); | ||||
| void GPU_shader_uniform_float(GPUShader *shader, int location, float value); | |||||
| void GPU_shader_geometry_stage_primitive_io(GPUShader *shader, int input, int output, int number); | void GPU_shader_geometry_stage_primitive_io(GPUShader *shader, int input, int output, int number); | ||||
| int GPU_shader_get_attribute(GPUShader *shader, const char *name); | int GPU_shader_get_attribute(GPUShader *shader, const char *name); | ||||
| void GPU_shader_bind_attribute(GPUShader *shader, int location, const char *name); | |||||
| void GPU_shader_bind_instancing_attrib(GPUShader *shader, void *matrixoffset, void *positionoffset, unsigned int stride); | |||||
| void GPU_shader_unbind_instancing_attrib(GPUShader *shader); | |||||
| /* Builtin/Non-generated shaders */ | /* Builtin/Non-generated shaders */ | ||||
| typedef enum GPUBuiltinShader { | typedef enum GPUBuiltinShader { | ||||
| GPU_SHADER_VSM_STORE = 0, | GPU_SHADER_VSM_STORE = 0, | ||||
| GPU_SHADER_SEP_GAUSSIAN_BLUR = 1, | GPU_SHADER_VSM_STORE_INSTANCING = 1, | ||||
| GPU_SHADER_SMOKE = 2, | GPU_SHADER_SEP_GAUSSIAN_BLUR = 2, | ||||
| GPU_SHADER_SMOKE_FIRE = 3, | GPU_SHADER_SMOKE = 3, | ||||
| GPU_SHADER_SMOKE_COBA = 4, | GPU_SHADER_SMOKE_FIRE = 4, | ||||
| GPU_SHADER_SMOKE_COBA = 5, | |||||
| GPU_SHADER_INSTANCING = 6, | |||||
| GPU_SHADER_DRAW_FRAME_BUFFER = 7, | |||||
| GPU_SHADER_STEREO_STIPPLE = 8, | |||||
| GPU_SHADER_STEREO_ANAGLYPH = 9, | |||||
| } GPUBuiltinShader; | } GPUBuiltinShader; | ||||
| GPUShader *GPU_shader_get_builtin_shader(GPUBuiltinShader shader); | GPUShader *GPU_shader_get_builtin_shader(GPUBuiltinShader shader); | ||||
| Context not available. | |||||