replace macros with bli math functions for nodes

This commit is contained in:
2011-11-06 16:23:28 +00:00
parent b05ee8b65f
commit 3d1e45c414
35 changed files with 80 additions and 80 deletions

View File

@@ -317,8 +317,8 @@ CompBuf *typecheck_compbuf(CompBuf *inbuf, int type)
if(inbuf->rect_procedural) {
outbuf->rect_procedural= inbuf->rect_procedural;
VECCOPY(outbuf->procedural_size, inbuf->procedural_size);
VECCOPY(outbuf->procedural_offset, inbuf->procedural_offset);
copy_v3_v3(outbuf->procedural_size, inbuf->procedural_size);
copy_v3_v3(outbuf->procedural_offset, inbuf->procedural_offset);
outbuf->procedural_type= inbuf->procedural_type;
outbuf->node= inbuf->node;
return outbuf;
@@ -707,12 +707,12 @@ void do_ycca_to_rgba(bNode *UNUSED(node), float *out, float *in)
void do_copy_rgba(bNode *UNUSED(node), float *out, float *in)
{
QUATCOPY(out, in);
copy_v4_v4(out, in);
}
void do_copy_rgb(bNode *UNUSED(node), float *out, float *in)
{
VECCOPY(out, in);
copy_v3_v3(out, in);
out[3]= 1.0f;
}
@@ -723,7 +723,7 @@ void do_copy_value(bNode *UNUSED(node), float *out, float *in)
void do_copy_a_rgba(bNode *UNUSED(node), float *out, float *in, float *fac)
{
VECCOPY(out, in);
copy_v3_v3(out, in);
out[3]= *fac;
}

View File

@@ -48,10 +48,10 @@ static void do_alphaover_premul(bNode *UNUSED(node), float *out, float *src, flo
{
if(over[3]<=0.0f) {
QUATCOPY(out, src);
copy_v4_v4(out, src);
}
else if(fac[0]==1.0f && over[3]>=1.0f) {
QUATCOPY(out, over);
copy_v4_v4(out, over);
}
else {
float mul= 1.0f - fac[0]*over[3];
@@ -68,10 +68,10 @@ static void do_alphaover_key(bNode *UNUSED(node), float *out, float *src, float
{
if(over[3]<=0.0f) {
QUATCOPY(out, src);
copy_v4_v4(out, src);
}
else if(fac[0]==1.0f && over[3]>=1.0f) {
QUATCOPY(out, over);
copy_v4_v4(out, over);
}
else {
float premul= fac[0]*over[3];
@@ -89,10 +89,10 @@ static void do_alphaover_mixed(bNode *node, float *out, float *src, float *over,
{
if(over[3]<=0.0f) {
QUATCOPY(out, src);
copy_v4_v4(out, src);
}
else if(fac[0]==1.0f && over[3]>=1.0f) {
QUATCOPY(out, over);
copy_v4_v4(out, over);
}
else {
NodeTwoFloats *ntf= node->storage;

View File

@@ -512,7 +512,7 @@ static void blur_with_reference(bNode *node, CompBuf *new, CompBuf *img, CompBuf
if(pix==1)
dest[0]= src[0];
else
QUATCOPY(dest, src);
copy_v4_v4(dest, src);
}
else {
int minxr= x-refradx<0?-x:-refradx;

View File

@@ -52,7 +52,7 @@ static void do_color_key(bNode *node, float *out, float *in)
c=node->storage;
VECCOPY(out, in);
copy_v3_v3(out, in);
if(
/* do hue last because it needs to wrap, and does some more checks */

View File

@@ -144,7 +144,7 @@ static void do_curves_fac(bNode *node, float *out, float *in, float *fac)
if(*fac>=1.0)
curvemapping_evaluate_premulRGBF(node->storage, out, in);
else if(*fac<=0.0) {
VECCOPY(out, in);
copy_v3_v3(out, in);
}
else {
float col[4], mfac= 1.0f-*fac;

View File

@@ -60,7 +60,7 @@ static void do_diff_matte(bNode *node, float *outColor, float *inColor1, float *
/*average together the distances*/
difference=difference/3.0;
VECCOPY(outColor, inColor1);
copy_v3_v3(outColor, inColor1);
/*make 100% transparent*/
if(difference < tolerence) {

View File

@@ -59,7 +59,7 @@ static void do_distance_matte(bNode *node, float *out, float *in)
(c->key[1]-in[1])*(c->key[1]-in[1]) +
(c->key[2]-in[2])*(c->key[2]-in[2]));
VECCOPY(out, in);
copy_v3_v3(out, in);
/*make 100% transparent */
if(distance < tolerence) {

View File

@@ -64,7 +64,7 @@ static void do_filter_edge(CompBuf *out, CompBuf *in, float *filter, float fac)
fp= out->rect + pix*y*rowlen;
if(pix==CB_RGBA) {
QUATCOPY(fp, row2);
copy_v4_v4(fp, row2);
fp+= pix;
for(x=2; x<rowlen; x++) {
@@ -78,7 +78,7 @@ static void do_filter_edge(CompBuf *out, CompBuf *in, float *filter, float fac)
/* no alpha... will clear it completely */
fp++; row1++; row2++; row3++;
}
QUATCOPY(fp, row2+4);
copy_v4_v4(fp, row2+4);
}
else if(pix==CB_VAL) {
fp+= pix;
@@ -138,7 +138,7 @@ static void do_filter3(CompBuf *out, CompBuf *in, float *filter, float fac)
fp[1]= row2[3];
}
else if(pixlen==3) {
VECCOPY(fp, row2);
copy_v3_v3(fp, row2);
fp+= 3;
for(x=2; x<rowlen; x++) {
@@ -147,10 +147,10 @@ static void do_filter3(CompBuf *out, CompBuf *in, float *filter, float fac)
fp++; row1++; row2++; row3++;
}
}
VECCOPY(fp, row2+3);
copy_v3_v3(fp, row2+3);
}
else {
QUATCOPY(fp, row2);
copy_v4_v4(fp, row2);
fp+= 4;
for(x=2; x<rowlen; x++) {
@@ -159,7 +159,7 @@ static void do_filter3(CompBuf *out, CompBuf *in, float *filter, float fac)
fp++; row1++; row2++; row3++;
}
}
QUATCOPY(fp, row2+4);
copy_v4_v4(fp, row2+4);
}
}
}

View File

@@ -64,7 +64,7 @@ static void do_hue_sat_fac(bNode *node, float *out, float *in, float *fac)
out[3]= in[3];
}
else {
QUATCOPY(out, in);
copy_v4_v4(out, in);
}
}

View File

@@ -50,7 +50,7 @@ static void do_invert(bNode *node, float *out, float *in)
out[1] = 1.0f - in[1];
out[2] = 1.0f - in[2];
} else
VECCOPY(out, in);
copy_v3_v3(out, in);
if(node->custom1 & CMP_CHAN_A)
out[3] = 1.0f - in[3];
@@ -75,7 +75,7 @@ static void do_invert_fac(bNode *node, float *out, float *in, float *fac)
if(node->custom1 & CMP_CHAN_A)
col[3] = fac[0]*col[3] + (facm*in[3]);
QUATCOPY(out, col);
copy_v4_v4(out, col);
}
static void node_composit_exec_invert(void *UNUSED(data), bNode *node, bNodeStack **in, bNodeStack **out)

View File

@@ -47,12 +47,12 @@ static void do_mix_rgb(bNode *node, float *out, float *in1, float *in2, float *f
{
float col[3];
VECCOPY(col, in1);
copy_v3_v3(col, in1);
if(node->custom2)
ramp_blend(node->custom1, col, col+1, col+2, in2[3]*fac[0], in2);
else
ramp_blend(node->custom1, col, col+1, col+2, fac[0], in2);
VECCOPY(out, col);
copy_v3_v3(out, col);
out[3]= in1[3];
}

View File

@@ -64,7 +64,7 @@ static void node_composit_exec_normal(void *UNUSED(data), bNode *node, bNodeStac
/* input no image? then only vector op */
if(in[0]->data==NULL) {
VECCOPY(out[0]->vec, nor);
copy_v3_v3(out[0]->vec, nor);
/* render normals point inside... the widget points outside */
out[1]->vec[0]= -dot_v3v3(out[0]->vec, in[0]->vec);
}

View File

@@ -69,7 +69,7 @@ static void node_composit_exec_normalize(void *UNUSED(data), bNode *node, bNodeS
/* Input has no image buffer? Then pass the value */
if(in[0]->data==NULL) {
QUATCOPY(out[0]->vec, in[0]->vec);
copy_v4_v4(out[0]->vec, in[0]->vec);
}
else {
float min = 1.0f+BLENDER_ZMAX;

View File

@@ -55,7 +55,7 @@ static void node_composit_exec_rgb(void *UNUSED(data), bNode *node, bNodeStack *
bNodeSocket *sock= node->outputs.first;
float *col= ((bNodeSocketValueRGBA*)sock->default_value)->value;
QUATCOPY(out[0]->vec, col);
copy_v4_v4(out[0]->vec, col);
}
void register_node_type_cmp_rgb(ListBase *lb)

View File

@@ -42,10 +42,10 @@ static bNodeSocketTemplate cmp_node_splitviewer_in[]= {
static void do_copy_split_rgba(bNode *UNUSED(node), float *out, float *in1, float *in2, float *fac)
{
if(*fac==0.0f) {
QUATCOPY(out, in1);
copy_v4_v4(out, in1);
}
else {
QUATCOPY(out, in2);
copy_v4_v4(out, in2);
}
}

View File

@@ -80,7 +80,7 @@ static void texture_procedural(CompBuf *cbuf, float *out, float xco, float yco)
else col[0]= col[1]= col[2]= col[3];
}
else {
VECCOPY(col, nor);
copy_v3_v3(col, nor);
}
typecheck_compbuf_color(out, col, cbuf->type, cbuf->procedural_type);
@@ -101,8 +101,8 @@ static void node_composit_exec_texture(void *data, bNode *node, bNodeStack **in,
prevbuf->rect_procedural= texture_procedural;
prevbuf->node= node;
VECCOPY(prevbuf->procedural_offset, in[0]->vec);
VECCOPY(prevbuf->procedural_size, in[1]->vec);
copy_v3_v3(prevbuf->procedural_offset, in[0]->vec);
copy_v3_v3(prevbuf->procedural_size, in[1]->vec);
prevbuf->procedural_type= CB_RGBA;
composit1_pixel_processor(node, prevbuf, prevbuf, out[0]->vec, do_copy_rgba, CB_RGBA);
@@ -118,8 +118,8 @@ static void node_composit_exec_texture(void *data, bNode *node, bNodeStack **in,
stackbuf->rect_procedural= texture_procedural;
stackbuf->node= node;
VECCOPY(stackbuf->procedural_offset, in[0]->vec);
VECCOPY(stackbuf->procedural_size, in[1]->vec);
copy_v3_v3(stackbuf->procedural_offset, in[0]->vec);
copy_v3_v3(stackbuf->procedural_size, in[1]->vec);
stackbuf->procedural_type= CB_VAL;
composit1_pixel_processor(node, stackbuf, stackbuf, out[0]->vec, do_copy_value, CB_VAL);
stackbuf->rect_procedural= NULL;
@@ -131,8 +131,8 @@ static void node_composit_exec_texture(void *data, bNode *node, bNodeStack **in,
stackbuf->rect_procedural= texture_procedural;
stackbuf->node= node;
VECCOPY(stackbuf->procedural_offset, in[0]->vec);
VECCOPY(stackbuf->procedural_size, in[1]->vec);
copy_v3_v3(stackbuf->procedural_offset, in[0]->vec);
copy_v3_v3(stackbuf->procedural_size, in[1]->vec);
stackbuf->procedural_type= CB_RGBA;
composit1_pixel_processor(node, stackbuf, stackbuf, out[0]->vec, do_copy_rgba, CB_RGBA);
stackbuf->rect_procedural= NULL;

View File

@@ -65,7 +65,7 @@ static void do_zcombine(bNode *node, float *out, float *src1, float *z1, float *
}
else {
// do combination based solely on z value
QUATCOPY(out, src1);
copy_v4_v4(out, src1);
}
}
else {
@@ -80,7 +80,7 @@ static void do_zcombine(bNode *node, float *out, float *src1, float *z1, float *
}
else {
// do combination based solely on z value
QUATCOPY(out, src1);
copy_v4_v4(out, src1);
}
if(node->custom2)

View File

@@ -55,12 +55,12 @@ void nodestack_get_vec(float *in, short type_in, bNodeStack *ns)
in[2]= from[0];
}
else {
VECCOPY(in, from);
copy_v3_v3(in, from);
}
}
else { /* type_in==SOCK_RGBA */
if(ns->sockettype==SOCK_RGBA) {
QUATCOPY(in, from);
copy_v4_v4(in, from);
}
else if(ns->sockettype==SOCK_FLOAT) {
in[0]= from[0];
@@ -69,7 +69,7 @@ void nodestack_get_vec(float *in, short type_in, bNodeStack *ns)
in[3]= 1.0f;
}
else {
VECCOPY(in, from);
copy_v3_v3(in, from);
in[3]= 1.0f;
}
}
@@ -140,13 +140,13 @@ void nodeShaderSynchronizeID(bNode *node, int copyto)
if(copyto) {
switch(a) {
case MAT_IN_COLOR:
VECCOPY(&ma->r, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
copy_v3_v3(&ma->r, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
case MAT_IN_SPEC:
VECCOPY(&ma->specr, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
copy_v3_v3(&ma->specr, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
case MAT_IN_REFL:
ma->ref= ((bNodeSocketValueFloat*)sock->default_value)->value; break;
case MAT_IN_MIR:
VECCOPY(&ma->mirr, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
copy_v3_v3(&ma->mirr, ((bNodeSocketValueRGBA*)sock->default_value)->value); break;
case MAT_IN_AMB:
ma->amb= ((bNodeSocketValueFloat*)sock->default_value)->value; break;
case MAT_IN_EMIT:
@@ -164,13 +164,13 @@ void nodeShaderSynchronizeID(bNode *node, int copyto)
else {
switch(a) {
case MAT_IN_COLOR:
VECCOPY(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->r); break;
copy_v3_v3(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->r); break;
case MAT_IN_SPEC:
VECCOPY(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->specr); break;
copy_v3_v3(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->specr); break;
case MAT_IN_REFL:
((bNodeSocketValueFloat*)sock->default_value)->value= ma->ref; break;
case MAT_IN_MIR:
VECCOPY(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->mirr); break;
copy_v3_v3(((bNodeSocketValueRGBA*)sock->default_value)->value, &ma->mirr); break;
case MAT_IN_AMB:
((bNodeSocketValueFloat*)sock->default_value)->value= ma->amb; break;
case MAT_IN_EMIT:
@@ -196,7 +196,7 @@ void node_gpu_stack_from_data(struct GPUNodeStack *gs, int type, bNodeStack *ns)
{
memset(gs, 0, sizeof(*gs));
QUATCOPY(gs->vec, ns->vec);
copy_v4_v4(gs->vec, ns->vec);
gs->link= ns->data;
if (type == SOCK_FLOAT)

View File

@@ -46,7 +46,7 @@ static void node_shader_exec_camera(void *data, bNode *UNUSED(node), bNodeStack
if(data) {
ShadeInput *shi= ((ShaderCallData *)data)->shi; /* Data we need for shading. */
VECCOPY(out[0]->vec, shi->co); /* get view vector */
copy_v3_v3(out[0]->vec, shi->co); /* get view vector */
out[1]->vec[0]= fabs(shi->co[2]); /* get view z-depth */
out[2]->vec[0]= normalize_v3(out[0]->vec); /* get view distance */
}

View File

@@ -90,7 +90,7 @@ static void node_shader_exec_geom(void *data, bNode *node, bNodeStack **UNUSED(i
}
}
VECCOPY(out[GEOM_OUT_VCOL]->vec, scol->col);
copy_v3_v3(out[GEOM_OUT_VCOL]->vec, scol->col);
out[GEOM_OUT_VCOL]->vec[3]= 1.0f;
}
else

View File

@@ -65,7 +65,7 @@ static void do_hue_sat_fac(bNode *UNUSED(node), float *out, float *hue, float *s
out[2]= mfac*in[2] + *fac*col[2];
}
else {
QUATCOPY(out, in);
copy_v4_v4(out, in);
}
}

View File

@@ -64,7 +64,7 @@ bNodeStack **out)
col[2] = in[0]->vec[0]*col[2] + (facm*in[1]->vec[2]);
}
VECCOPY(out[0]->vec, col);
copy_v3_v3(out[0]->vec, col);
}
static int gpu_shader_invert(GPUMaterial *mat, bNode *UNUSED(node), GPUNodeStack *in, GPUNodeStack *out)

View File

@@ -148,13 +148,13 @@ static void node_shader_exec_material(void *data, bNode *node, bNodeStack **in,
/* write to outputs */
if(node->custom1 & SH_NODE_MAT_DIFF) {
VECCOPY(col, shrnode.combined);
copy_v3_v3(col, shrnode.combined);
if(!(node->custom1 & SH_NODE_MAT_SPEC)) {
sub_v3_v3(col, shrnode.spec);
}
}
else if(node->custom1 & SH_NODE_MAT_SPEC) {
VECCOPY(col, shrnode.spec);
copy_v3_v3(col, shrnode.spec);
}
else
col[0]= col[1]= col[2]= 0.0f;
@@ -164,7 +164,7 @@ static void node_shader_exec_material(void *data, bNode *node, bNodeStack **in,
if(shi->do_preview)
nodeAddToPreview(node, col, shi->xs, shi->ys, shi->do_manage);
VECCOPY(out[MAT_OUT_COLOR]->vec, col);
copy_v3_v3(out[MAT_OUT_COLOR]->vec, col);
out[MAT_OUT_ALPHA]->vec[0]= shrnode.alpha;
if(node->custom1 & SH_NODE_MAT_NEG) {
@@ -173,15 +173,15 @@ static void node_shader_exec_material(void *data, bNode *node, bNodeStack **in,
shi->vn[2]= -shi->vn[2];
}
VECCOPY(out[MAT_OUT_NORMAL]->vec, shi->vn);
copy_v3_v3(out[MAT_OUT_NORMAL]->vec, shi->vn);
/* Extended material options */
if (node->type == SH_NODE_MATERIAL_EXT) {
/* Shadow, Reflect, Refract, Radiosity, Speed seem to cause problems inside
* a node tree :( */
VECCOPY(out[MAT_OUT_DIFFUSE]->vec, shrnode.diff);
VECCOPY(out[MAT_OUT_SPEC]->vec, shrnode.spec);
VECCOPY(out[MAT_OUT_AO]->vec, shrnode.ao);
copy_v3_v3(out[MAT_OUT_DIFFUSE]->vec, shrnode.diff);
copy_v3_v3(out[MAT_OUT_SPEC]->vec, shrnode.spec);
copy_v3_v3(out[MAT_OUT_AO]->vec, shrnode.ao);
}
/* copy passes, now just active node */

View File

@@ -59,7 +59,7 @@ static void node_shader_exec_mix_rgb(void *UNUSED(data), bNode *node, bNodeStack
nodestack_get_vec(vec, SOCK_VECTOR, in[2]);
ramp_blend(node->custom1, col, col+1, col+2, fac, vec);
VECCOPY(out[0]->vec, col);
copy_v3_v3(out[0]->vec, col);
}
static int gpu_shader_mix_rgb(GPUMaterial *mat, bNode *node, GPUNodeStack *in, GPUNodeStack *out)

View File

@@ -66,7 +66,7 @@ static void node_shader_exec_normal(void *UNUSED(data), bNode *node, bNodeStack
nodestack_get_vec(vec, SOCK_VECTOR, in[0]);
VECCOPY(out[0]->vec, ((bNodeSocketValueVector*)sock->default_value)->value);
copy_v3_v3(out[0]->vec, ((bNodeSocketValueVector*)sock->default_value)->value);
/* render normals point inside... the widget points outside */
out[1]->vec[0]= -INPR(out[0]->vec, vec);
}

View File

@@ -57,10 +57,10 @@ static void node_shader_exec_output(void *data, bNode *node, bNodeStack **in, bN
if(node->flag & NODE_DO_OUTPUT) {
ShadeResult *shr= ((ShaderCallData *)data)->shr;
QUATCOPY(shr->combined, col);
copy_v4_v4(shr->combined, col);
shr->alpha= col[3];
// VECCOPY(shr->nor, in[3]->vec);
// copy_v3_v3(shr->nor, in[3]->vec);
}
}
}

View File

@@ -54,7 +54,7 @@ static void node_shader_exec_rgb(void *UNUSED(data), bNode *node, bNodeStack **U
bNodeSocket *sock= node->outputs.first;
float *col= ((bNodeSocketValueRGBA*)sock->default_value)->value;
VECCOPY(out[0]->vec, col);
copy_v3_v3(out[0]->vec, col);
}
static int gpu_shader_rgb(GPUMaterial *mat, bNode *node, GPUNodeStack *in, GPUNodeStack *out)

View File

@@ -82,7 +82,7 @@ static void node_shader_exec_texture(void *data, bNode *node, bNodeStack **in, b
retval= multitex_nodes((Tex *)node->id, vec, NULL, NULL, 0, &texres, thread, which_output, NULL, NULL);
}
else {
VECCOPY(vec, shi->lo);
copy_v3_v3(vec, shi->lo);
retval= multitex_nodes((Tex *)node->id, vec, NULL, NULL, 0, &texres, thread, which_output, NULL, NULL);
}
@@ -111,7 +111,7 @@ static void node_shader_exec_texture(void *data, bNode *node, bNodeStack **in, b
out[1]->vec[3]= 1.0f;
}
VECCOPY(out[2]->vec, nor);
copy_v3_v3(out[2]->vec, nor);
if(shi->do_preview)
nodeAddToPreview(node, out[1]->vec, shi->xs, shi->ys, shi->do_manage);

View File

@@ -107,9 +107,9 @@ static void colorfn(float *out, TexParams *p, bNode *node, bNodeStack **in, shor
if( ins_x < mortar_thickness || ins_y < mortar_thickness ||
ins_x > (brick_width - mortar_thickness) ||
ins_y > (row_height - mortar_thickness) ) {
QUATCOPY( out, mortar );
copy_v4_v4( out, mortar );
} else {
QUATCOPY( out, bricks1 );
copy_v4_v4( out, bricks1 );
ramp_blend( MA_RAMP_BLEND, out, out+1, out+2, tint, bricks2 );
}
}

View File

@@ -66,7 +66,7 @@ static void do_hue_sat_fac(bNode *UNUSED(node), float *out, float hue, float sat
out[2]= mfac*in[2] + fac*col[2];
}
else {
QUATCOPY(out, in);
copy_v4_v4(out, in);
}
}

View File

@@ -76,7 +76,7 @@ static void colorfn(float *out, TexParams *p, bNode *node, bNodeStack **UNUSED(i
while( py >= ibuf->y ) py -= ibuf->y;
result = ibuf->rect_float + py*ibuf->x*4 + px*4;
QUATCOPY( out, result );
copy_v4_v4( out, result );
}
}
}

View File

@@ -54,7 +54,7 @@ static void colorfn(float *out, TexParams *p, bNode *UNUSED(node), bNodeStack **
col[1] = 1.0f - col[1];
col[2] = 1.0f - col[2];
VECCOPY(out, col);
copy_v3_v3(out, col);
out[3] = col[3];
}

View File

@@ -55,7 +55,7 @@ static void colorfn(float *out, TexParams *p, bNode *node, bNodeStack **in, shor
CLAMP(fac, 0.0f, 1.0f);
QUATCOPY(out, col1);
copy_v4_v4(out, col1);
ramp_blend(node->custom1, out, out+1, out+2, fac, col2);
}

View File

@@ -75,10 +75,10 @@ static void do_proc(float *result, TexParams *p, float *col1, float *col2, char
return;
if(textype & TEX_RGB) {
QUATCOPY(result, &texres.tr);
copy_v4_v4(result, &texres.tr);
}
else {
QUATCOPY(result, col1);
copy_v4_v4(result, col1);
ramp_blend(MA_RAMP_BLEND, result, result+1, result+2, texres.tin, col2);
}
}

View File

@@ -65,7 +65,7 @@ static void colorfn(float *out, TexParams *p, bNode *node, bNodeStack **in, shor
if(node->custom2 || node->need_exec==0) {
/* this node refers to its own texture tree! */
QUATCOPY(out, (fabs(co[0] - co[1]) < .01) ? white : red );
copy_v4_v4(out, (fabs(co[0] - co[1]) < .01) ? white : red );
}
else if(nodetex) {
TexResult texres;
@@ -81,10 +81,10 @@ static void colorfn(float *out, TexParams *p, bNode *node, bNodeStack **in, shor
&texres, thread, 0, p->shi, p->mtex);
if(textype & TEX_RGB) {
QUATCOPY(out, &texres.tr);
copy_v4_v4(out, &texres.tr);
}
else {
QUATCOPY(out, col1);
copy_v4_v4(out, col1);
ramp_blend(MA_RAMP_BLEND, out, out+1, out+2, texres.tin, col2);
}
}