|
Blender
V2.59
|
#include "DNA_listBase.h"Go to the source code of this file.
Classes | |
| struct | GPUFunction |
Defines | |
| #define | MAX_FUNCTION_NAME 64 |
| #define | MAX_PARAMETER 32 |
| #define | FUNCTION_QUAL_IN 0 |
| #define | FUNCTION_QUAL_OUT 1 |
| #define | FUNCTION_QUAL_INOUT 2 |
Typedefs | |
| typedef struct GPUFunction | GPUFunction |
| typedef struct GPUPass | GPUPass |
Functions | |
| GPUFunction * | GPU_lookup_function (const char *name) |
| GPUPass * | GPU_generate_pass (ListBase *nodes, struct GPUNodeLink *outlink, struct GPUVertexAttribs *attribs, int *builtin, const char *name) |
| struct GPUShader * | GPU_pass_shader (GPUPass *pass) |
| void | GPU_pass_bind (GPUPass *pass, double time, int mipmap) |
| void | GPU_pass_update_uniforms (GPUPass *pass) |
| void | GPU_pass_unbind (GPUPass *pass) |
| void | GPU_pass_free (GPUPass *pass) |
| const char * | GPU_builtin_name (GPUBuiltin builtin) |
| void | gpu_material_add_node (struct GPUMaterial *material, struct GPUNode *node) |
| int | GPU_link_changed (struct GPUNodeLink *link) |
Definition in file gpu_codegen.h.
| #define FUNCTION_QUAL_IN 0 |
Definition at line 52 of file gpu_codegen.h.
Referenced by GPU_link(), gpu_parse_functions_string(), and GPU_stack_link().
| #define FUNCTION_QUAL_INOUT 2 |
Definition at line 54 of file gpu_codegen.h.
Referenced by gpu_parse_functions_string().
| #define FUNCTION_QUAL_OUT 1 |
Definition at line 53 of file gpu_codegen.h.
Referenced by gpu_parse_functions_string().
| #define MAX_FUNCTION_NAME 64 |
Definition at line 49 of file gpu_codegen.h.
Referenced by gpu_parse_functions_string().
| #define MAX_PARAMETER 32 |
Definition at line 50 of file gpu_codegen.h.
| typedef struct GPUFunction GPUFunction |
Definition at line 72 of file gpu_codegen.h.
| const char* GPU_builtin_name | ( | GPUBuiltin | builtin | ) |
Definition at line 457 of file gpu_codegen.c.
References GPU_INVERSE_OBJECT_MATRIX, GPU_INVERSE_VIEW_MATRIX, GPU_OBCOLOR, GPU_OBJECT_MATRIX, GPU_VIEW_MATRIX, GPU_VIEW_NORMAL, and GPU_VIEW_POSITION.
Referenced by codegen_call_functions(), codegen_print_uniforms_functions(), and GPU_material_construct_end().
| GPUPass* GPU_generate_pass | ( | ListBase * | nodes, |
| struct GPUNodeLink * | outlink, | ||
| struct GPUVertexAttribs * | attribs, | ||
| int * | builtin, | ||
| const char * | name | ||
| ) |
Definition at line 1398 of file gpu_codegen.c.
References code_generate_fragment(), code_generate_vertex(), datatoc_gpu_shader_material_glsl, GPU_nodes_extract_dynamic_inputs(), GPU_nodes_free(), gpu_nodes_get_builtin_flag(), gpu_nodes_get_vertex_attributes(), gpu_nodes_prune(), GPU_shader_create(), MEM_callocN(), MEM_freeN(), NULL, GPUNodeLink::output, GPUPass::output, and GPUPass::shader.
Referenced by GPU_material_construct_end().
| int GPU_link_changed | ( | struct GPUNodeLink * | link | ) |
Definition at line 1338 of file gpu_codegen.c.
References ListBase::first, GPUNode::inputs, GPUInput::link, GPUNode::name, GPUOutput::node, NULL, and GPUNodeLink::output.
Referenced by do_material_tex(), GPU_shaderesult_set(), and shade_one_light().
| GPUFunction* GPU_lookup_function | ( | const char * | name | ) |
Definition at line 354 of file gpu_codegen.c.
References BLI_ghash_lookup(), BLI_ghash_new(), BLI_ghashutil_strcmp(), BLI_ghashutil_strhash(), datatoc_gpu_shader_material_glsl, and gpu_parse_functions_string().
Referenced by GPU_link(), and GPU_stack_link().
| void gpu_material_add_node | ( | struct GPUMaterial * | material, |
| struct GPUNode * | node | ||
| ) |
Definition at line 369 of file gpu_material.c.
References BLI_addtail(), and GPUMaterial::nodes.
Referenced by GPU_link(), and GPU_stack_link().
| void GPU_pass_bind | ( | GPUPass * | pass, |
| double | time, | ||
| int | mipmap | ||
| ) |
Definition at line 830 of file gpu_codegen.c.
References GPUInput::bindtex, ListBase::first, GPU_shader_bind(), GPU_shader_uniform_texture(), GPU_texture_bind(), GPU_texture_from_blender(), GPUInput::ima, inputs, GPUPass::inputs, GPUInput::iuser, GPUInput::next, GPUPass::shader, GPUInput::shaderloc, GPUInput::tex, and GPUInput::texid.
Referenced by GPU_material_bind().
| void GPU_pass_free | ( | GPUPass * | pass | ) |
Definition at line 1443 of file gpu_codegen.c.
References GPU_inputs_free(), GPU_shader_free(), GPUPass::inputs, MEM_freeN(), and GPUPass::shader.
Referenced by GPU_material_free().
Definition at line 770 of file gpu_codegen.c.
References GPUPass::shader.
Referenced by GPU_material_bind_uniforms(), GPU_material_construct_end(), and gpu_material_set_attrib_id().
| void GPU_pass_unbind | ( | GPUPass * | pass | ) |
Definition at line 869 of file gpu_codegen.c.
References GPUInput::bindtex, ListBase::first, GPU_shader_unbind(), GPU_texture_unbind(), GPUInput::ima, inputs, GPUPass::inputs, GPUInput::next, GPUPass::shader, and GPUInput::tex.
Referenced by GPU_material_unbind().
| void GPU_pass_update_uniforms | ( | GPUPass * | pass | ) |
Definition at line 853 of file gpu_codegen.c.
References GPUInput::dynamicvec, ListBase::first, GPU_shader_uniform_vector(), GPUInput::ima, inputs, GPUPass::inputs, GPUInput::next, GPUPass::shader, GPUInput::shaderloc, GPUInput::tex, and GPUInput::type.
Referenced by GPU_material_bind_uniforms().