34 const char **r_disabled_hint)
37 *r_disabled_hint =
RPT_(
"Not a texture node tree");
64 if (in->hasoutput && in->sockettype ==
SOCK_FLOAT) {
65 in->vec[1] = in->vec[2] = in->vec[0];
68 memcpy(out, in->vec, num *
sizeof(
float));
80 if (in->hasoutput && in->sockettype ==
SOCK_FLOAT) {
81 out[1] = out[2] = out[0];
85 if (in->hasoutput && in->sockettype ==
SOCK_VECTOR) {
86 out[0] = out[0] * 0.5f + 0.5f;
87 out[1] = out[1] * 0.5f + 0.5f;
88 out[2] = out[2] * 0.5f + 0.5f;
105 out->previewco = in->co;
106 out->osatex = in->osatex;
107 out->cfra = in->cfra;
108 out->mtex = in->mtex;
127 dg = MEM_cnew<TexDelegate>(
"tex delegate");
139 dg->
type = out->sockettype;
146 if (node->type == TEX_NODE_TEXTURE && node->id) {
#define LISTBASE_FOREACH(type, var, list)
void node_type_base(bNodeType *ntype, int type, const char *name, short nclass)
static void texfn(float *result, TexParams *p, bNode *node, bNodeStack **in, MapFn map_inputs, short thread)
void tex_node_type_base(blender::bke::bNodeType *ntype, int type, const char *name, short nclass)
void tex_input_vec(float *out, bNodeStack *in, TexParams *params, short thread)
float tex_input_value(bNodeStack *in, TexParams *params, short thread)
bool tex_node_poll_default(const blender::bke::bNodeType *, const bNodeTree *ntree, const char **r_disabled_hint)
void tex_input_rgba(float *out, bNodeStack *in, TexParams *params, short thread)
static void tex_call_delegate(TexDelegate *dg, float *out, TexParams *params, short thread)
void tex_output(bNode *node, bNodeExecData *execdata, bNodeStack **in, bNodeStack *out, TexFn texfn, TexCallData *cdata)
void params_from_cdata(TexParams *out, TexCallData *in)
void ntreeTexCheckCyclics(bNodeTree *ntree)
static void tex_input(float *out, int num, bNodeStack *in, TexParams *params, short thread)
void(*)(float *out, TexParams *params, bNode *node, bNodeStack **in, short thread) TexFn
bool node_insert_link_default(bNodeTree *, bNode *, bNodeLink *)
bNodeStack * in[MAX_SOCKET]
struct bNodeTree * nodetree
bNodeRuntimeHandle * runtime
bool(* poll)(const bNodeType *ntype, const bNodeTree *nodetree, const char **r_disabled_hint)
bool(* insert_link)(bNodeTree *ntree, bNode *node, bNodeLink *link)