Blender V2.61 - r43446
|
Go to the source code of this file.
Functions | |
void | nodestack_get_vec (float *in, short type_in, bNodeStack *ns) |
void | node_shader_pass_on (void *UNUSED(data), int UNUSED(thread), struct bNode *node, void *UNUSED(nodedata), struct bNodeStack **in, struct bNodeStack **out) |
int | gpu_shader_pass_on (struct GPUMaterial *mat, struct bNode *node, void *UNUSED(nodedata), struct GPUNodeStack *in, struct GPUNodeStack *out) |
void | ntreeShaderGetTexcoMode (bNodeTree *ntree, int r_mode, short *texco, int *mode) |
void | nodeShaderSynchronizeID (bNode *node, int copyto) |
void | node_gpu_stack_from_data (struct GPUNodeStack *gs, int type, bNodeStack *ns) |
void | node_data_from_gpu_stack (bNodeStack *ns, GPUNodeStack *gs) |
static void | gpu_stack_from_data_list (GPUNodeStack *gs, ListBase *sockets, bNodeStack **ns) |
static void | data_from_gpu_stack_list (ListBase *sockets, bNodeStack **ns, GPUNodeStack *gs) |
bNode * | nodeGetActiveTexture (bNodeTree *ntree) |
void | ntreeExecGPUNodes (bNodeTreeExec *exec, GPUMaterial *mat, int do_outputs) |
void | node_shader_gpu_tex_mapping (GPUMaterial *mat, bNode *node, GPUNodeStack *in, GPUNodeStack *UNUSED(out)) |
Definition in file node_shader_util.c.
static void data_from_gpu_stack_list | ( | ListBase * | sockets, |
bNodeStack ** | ns, | ||
GPUNodeStack * | gs | ||
) | [static] |
Definition at line 288 of file node_shader_util.c.
References ListBase::first, i, bNodeSocket::next, and node_data_from_gpu_stack().
Referenced by ntreeExecGPUNodes().
int gpu_shader_pass_on | ( | struct GPUMaterial * | mat, |
struct bNode * | node, | ||
void * | UNUSEDnodedata, | ||
struct GPUNodeStack * | in, | ||
struct GPUNodeStack * | out | ||
) |
Definition at line 106 of file node_shader_util.c.
References BLI_freelistN(), ListBase::first, GPU_stack_link_mute(), MEM_freeN(), bNodeType::mutelinksfunc, LinkInOutsMuteNode::next, NULL, LinkInOutsMuteNode::num_outs, LinkInOutsMuteNode::outs, and bNode::typeinfo.
static void gpu_stack_from_data_list | ( | GPUNodeStack * | gs, |
ListBase * | sockets, | ||
bNodeStack ** | ns | ||
) | [static] |
Definition at line 277 of file node_shader_util.c.
References ListBase::first, GPU_NONE, i, bNodeSocket::next, node_gpu_stack_from_data(), GPUNodeStack::type, and bNodeSocket::type.
Referenced by ntreeExecGPUNodes().
void node_data_from_gpu_stack | ( | bNodeStack * | ns, |
GPUNodeStack * | gs | ||
) |
Definition at line 271 of file node_shader_util.c.
References bNodeStack::data, GPUNodeStack::link, GPUNodeStack::sockettype, and bNodeStack::sockettype.
Referenced by data_from_gpu_stack_list(), and group_gpu_copy_inputs().
void node_gpu_stack_from_data | ( | struct GPUNodeStack * | gs, |
int | type, | ||
bNodeStack * | ns | ||
) |
Definition at line 243 of file node_shader_util.c.
References copy_v4_v4(), bNodeStack::data, GPU_FLOAT, GPU_NONE, GPU_VEC3, GPU_VEC4, GPUNodeStack::hasinput, bNodeStack::hasinput, GPUNodeStack::hasoutput, bNodeStack::hasoutput, GPUNodeStack::link, GPUNodeStack::name, SOCK_FLOAT, SOCK_RGBA, SOCK_SHADER, SOCK_VECTOR, GPUNodeStack::sockettype, bNodeStack::sockettype, GPUNodeStack::type, GPUNodeStack::vec, and bNodeStack::vec.
Referenced by gpu_stack_from_data_list(), and group_gpu_move_outputs().
void node_shader_gpu_tex_mapping | ( | GPUMaterial * | mat, |
bNode * | node, | ||
GPUNodeStack * | in, | ||
GPUNodeStack * | UNUSEDout | ||
) |
Definition at line 371 of file node_shader_util.c.
References TexMapping::flag, GPU_link(), GPU_uniform(), link(), TexMapping::mat, TexMapping::max, TexMapping::min, bNode::storage, NodeTexBase::tex_mapping, TEXMAP_CLIP_MAX, TEXMAP_CLIP_MIN, and TEXMAP_UNIT_MATRIX.
Referenced by node_shader_gpu_tex_checker(), node_shader_gpu_tex_environment(), node_shader_gpu_tex_gradient(), node_shader_gpu_tex_image(), node_shader_gpu_tex_magic(), node_shader_gpu_tex_musgrave(), node_shader_gpu_tex_noise(), node_shader_gpu_tex_sky(), node_shader_gpu_tex_voronoi(), and node_shader_gpu_tex_wave().
void node_shader_pass_on | ( | void * | UNUSEDdata, |
int | UNUSEDthread, | ||
struct bNode * | node, | ||
void * | UNUSEDnodedata, | ||
struct bNodeStack ** | in, | ||
struct bNodeStack ** | out | ||
) |
Definition at line 82 of file node_shader_util.c.
References BLI_freelistN(), copy_v4_v4(), ListBase::first, i, LinkInOutsMuteNode::in, MEM_freeN(), bNodeType::mutelinksfunc, LinkInOutsMuteNode::next, NULL, LinkInOutsMuteNode::num_outs, LinkInOutsMuteNode::outs, and bNode::typeinfo.
Definition at line 297 of file node_shader_util.c.
References ListBase::first, bNode::flag, bNode::id, bNode::next, NODE_ACTIVE_TEXTURE, NODE_GROUP_EDIT, bNodeTree::nodes, and NULL.
Referenced by ED_object_assign_active_image(), and ED_object_get_active_image().
void nodeShaderSynchronizeID | ( | bNode * | node, |
int | copyto | ||
) |
Definition at line 176 of file node_shader_util.c.
References Material::alpha, Material::amb, copy_v3_v3(), bNodeSocket::default_value, ELEM, Material::emit, ListBase::first, bNode::id, bNode::inputs, MAT_IN_ALPHA, MAT_IN_AMB, MAT_IN_COLOR, MAT_IN_EMIT, MAT_IN_MIR, MAT_IN_RAY_MIRROR, MAT_IN_REFL, MAT_IN_SPEC, MAT_IN_SPECTRA, MAT_IN_TRANSLUCENCY, Material::mirr, bNodeSocket::next, nodeSocketIsHidden(), NULL, Material::r, Material::ray_mirror, Material::ref, SH_NODE_MATERIAL, SH_NODE_MATERIAL_EXT, Material::specr, Material::spectra, Material::translucency, and bNode::type.
Referenced by node_draw_basis(), and node_sync_cb().
void nodestack_get_vec | ( | float * | in, |
short | type_in, | ||
bNodeStack * | ns | ||
) |
Definition at line 41 of file node_shader_util.c.
References copy_v3_v3(), copy_v4_v4(), SOCK_FLOAT, SOCK_RGBA, SOCK_VECTOR, bNodeStack::sockettype, and bNodeStack::vec.
Referenced by node_shader_exec_curve_rgb(), node_shader_exec_curve_vec(), node_shader_exec_mapping(), node_shader_exec_material(), node_shader_exec_mix_rgb(), node_shader_exec_normal(), node_shader_exec_output(), node_shader_exec_squeeze(), node_shader_exec_texture(), node_shader_exec_valtorgb(), and node_shader_exec_vect_math().
void ntreeExecGPUNodes | ( | bNodeTreeExec * | exec, |
GPUMaterial * | mat, | ||
int | do_outputs | ||
) |
Definition at line 320 of file node_shader_util.c.
References bNodeExec::data, data_from_gpu_stack_list(), bNode::flag, gpu_stack_from_data_list(), bNodeType::gpuextfunc, bNodeType::gpufunc, bNodeType::gpumutefunc, bNode::inputs, MAX_SOCKET, bNodeType::nclass, bNodeExec::node, NODE_CLASS_OUTPUT, NODE_DO_OUTPUT, node_get_stack(), NODE_MUTED, bNodeTreeExec::nodeexec, bNode::outputs, bNodeTreeExec::stack, stack, and bNode::typeinfo.
Referenced by gpu_group_execute(), and ntreeGPUMaterialNodes().
void ntreeShaderGetTexcoMode | ( | bNodeTree * | ntree, |
int | r_mode, | ||
short * | texco, | ||
int * | mode | ||
) |
Definition at line 131 of file node_shader_util.c.
References ELEM3, ListBase::first, bNodeSocket::flag, GEOM_OUT_GLOB, GEOM_OUT_NORMAL, GEOM_OUT_ORCO, GEOM_OUT_UV, GEOM_OUT_VCOL, GEOM_OUT_VCOL_ALPHA, GEOM_OUT_VIEW, bNode::id, bNode::inputs, bNodeSocket::link, MA_VERTEXCOL, NEED_UV, bNodeSocket::next, bNode::next, bNodeTree::nodes, NULL, bNode::outputs, R_OSA, SH_NODE_GEOMETRY, SH_NODE_TEXTURE, SOCK_IN_USE, TEX_ENVMAP, TEX_IMAGE, TEX_PLUGIN, TEXCO_GLOB, TEXCO_NORM, TEXCO_ORCO, TEXCO_OSA, TEXCO_UV, TEXCO_VIEW, Tex::type, and bNode::type.
Referenced by do_init_render_material().