Blender
V3.3
|
#include <math.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_ID.h"
#include "DNA_color_types.h"
#include "DNA_image_types.h"
#include "DNA_material_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_texture_types.h"
#include "BLI_math_vector.h"
#include "BLI_rand.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "BKE_colorband.h"
#include "BKE_colortools.h"
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_node.h"
#include "BKE_texture.h"
#include "NOD_texture.h"
#include "node_util.h"
#include "BLT_translation.h"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
#include "RE_pipeline.h"
#include "RE_texture.h"
Go to the source code of this file.
Classes | |
struct | TexCallData |
struct | TexParams |
struct | TexDelegate |
Typedefs | |
typedef struct TexCallData | TexCallData |
typedef struct TexParams | TexParams |
typedef void(* | TexFn) (float *out, TexParams *params, bNode *node, bNodeStack **in, short thread) |
typedef struct TexDelegate | TexDelegate |
typedef struct TexCallData TexCallData |
typedef struct TexDelegate TexDelegate |
Definition at line 81 of file node_texture_util.h.
bool ntreeExecThreadNodes | ( | struct bNodeTreeExec * | exec, |
struct bNodeThreadStack * | nts, | ||
void * | callerdata, | ||
int | thread | ||
) |
Definition at line 187 of file node_texture_tree.c.
References bNodeExec::data, exec(), MAX_SOCKET, node, bNodeExec::node, node_get_stack(), NODE_MUTED, NULL, and bNodeThreadStack::stack.
Referenced by group_execute(), and ntreeTexExecTree().
struct bNodeThreadStack* ntreeGetThreadStack | ( | struct bNodeTreeExec * | exec, |
int | thread | ||
) |
Definition at line 160 of file node_texture_tree.c.
References BLI_addtail(), exec(), ListBase::first, MEM_callocN, MEM_dupallocN, bNodeThreadStack::next, bNodeThreadStack::stack, and bNodeThreadStack::used.
Referenced by group_execute(), and ntreeTexExecTree().
void ntreeReleaseThreadStack | ( | struct bNodeThreadStack * | nts | ) |
Definition at line 182 of file node_texture_tree.c.
References bNodeThreadStack::used.
Referenced by group_execute(), and ntreeTexExecTree().
struct bNodeTreeExec* ntreeTexBeginExecTree_internal | ( | struct bNodeExecContext * | context, |
struct bNodeTree * | ntree, | ||
bNodeInstanceKey | parent_key | ||
) |
Definition at line 215 of file node_texture_tree.c.
References BLENDER_MAX_THREADS, blender::compositor::context, exec(), MEM_callocN, node, ntree, and ntree_exec_begin().
Referenced by group_initexec(), and ntreeTexBeginExecTree().
void ntreeTexEndExecTree_internal | ( | struct bNodeTreeExec * | exec | ) |
Definition at line 277 of file node_texture_tree.c.
References Freestyle::a, BLENDER_MAX_THREADS, BLI_freelistN(), exec(), MEM_freeN, bNodeThreadStack::next, ntree_exec_end(), NULL, bNodeThreadStack::stack, and tex_free_delegates().
Referenced by group_freeexec(), and ntreeTexEndExecTree().
void params_from_cdata | ( | TexParams * | out, |
TexCallData * | in | ||
) |
Definition at line 94 of file node_texture_util.c.
References TexCallData::cfra, TexCallData::co, TexCallData::dxt, TexCallData::dyt, TexCallData::mtex, TexCallData::osatex, and usdtokens::out().
Referenced by exec().
void tex_input_rgba | ( | float * | out, |
bNodeStack * | in, | ||
TexParams * | params, | ||
short | thread | ||
) |
Definition at line 70 of file node_texture_util.c.
References bNodeStack::hasoutput, usdtokens::out(), params, SOCK_FLOAT, SOCK_VECTOR, bNodeStack::sockettype, and tex_input().
Referenced by colorfn(), exec(), rgb_colorfn(), rgbtobw_valuefn(), texfn(), valuefn_a(), valuefn_b(), valuefn_g(), and valuefn_r().
float tex_input_value | ( | bNodeStack * | in, |
TexParams * | params, | ||
short | thread | ||
) |
Definition at line 87 of file node_texture_util.c.
References usdtokens::out(), params, and tex_input_vec().
Referenced by clouds_map_inputs(), colorfn(), distnoise_map_inputs(), magic_map_inputs(), marble_map_inputs(), musgrave_map_inputs(), normalfn(), stucci_map_inputs(), valtorgb_colorfn(), valuefn(), voronoi_map_inputs(), and wood_map_inputs().
void tex_input_vec | ( | float * | out, |
bNodeStack * | in, | ||
TexParams * | params, | ||
short | thread | ||
) |
Definition at line 65 of file node_texture_util.c.
References usdtokens::out(), params, and tex_input().
Referenced by colorfn(), tex_input_value(), and valuefn().
bool tex_node_poll_default | ( | struct bNodeType * | ntype, |
struct bNodeTree * | ntree, | ||
const char ** | r_disabled_hint | ||
) |
Definition at line 37 of file node_texture_util.c.
References bNodeType::insert_link, node_insert_link_default(), node_type_base(), bNodeType::poll, tex_node_poll_default(), and type.
Referenced by register_node_type_tex_at(), register_node_type_tex_bricks(), register_node_type_tex_checker(), register_node_type_tex_combine_color(), register_node_type_tex_compose(), register_node_type_tex_coord(), register_node_type_tex_curve_rgb(), register_node_type_tex_curve_time(), register_node_type_tex_decompose(), register_node_type_tex_distance(), register_node_type_tex_hue_sat(), register_node_type_tex_image(), register_node_type_tex_invert(), register_node_type_tex_math(), register_node_type_tex_mix_rgb(), register_node_type_tex_output(), register_node_type_tex_rgbtobw(), register_node_type_tex_rotate(), register_node_type_tex_scale(), register_node_type_tex_separate_color(), register_node_type_tex_texture(), register_node_type_tex_translate(), register_node_type_tex_valtonor(), register_node_type_tex_valtorgb(), and register_node_type_tex_viewer().
void tex_output | ( | bNode * | node, |
bNodeExecData * | execdata, | ||
bNodeStack ** | in, | ||
bNodeStack * | out, | ||
TexFn | texfn, | ||
TexCallData * | data | ||
) |
Definition at line 105 of file node_texture_util.c.
References TexDelegate::cdata, TexDelegate::fn, TexDelegate::in, MAX_SOCKET, MEM_mallocN, node, TexDelegate::node, NODE_MUTED, usdtokens::out(), bNodeExecData::preview, TexDelegate::preview, texfn(), and TexDelegate::type.
Referenced by exec(), rgb_exec(), rgbtobw_exec(), time_exec(), and valtorgb_exec().