[Bf-blender-cvs] [9282d30] texture_nodes_refactor: Merge branch 'master' into texture_nodes_refactor

Sergey Sharybin noreply at git.blender.org
Tue Dec 23 06:04:53 CET 2014


Commit: 9282d305bdc56522543129436db1e8a5d19cf39f
Author: Sergey Sharybin
Date:   Tue Dec 23 10:04:03 2014 +0500
Branches: texture_nodes_refactor
https://developer.blender.org/rB9282d305bdc56522543129436db1e8a5d19cf39f

Merge branch 'master' into texture_nodes_refactor

Conflicts:
	source/blender/nodes/texture/nodes/node_texture_math.c

===================================================================



===================================================================

diff --cc source/blender/nodes/texture/nodes/node_texture_math.c
index 022e5db,1984ee5..bae97be
--- a/source/blender/nodes/texture/nodes/node_texture_math.c
+++ b/source/blender/nodes/texture/nodes/node_texture_math.c
@@@ -58,139 -53,139 +58,139 @@@ static void exec(void *UNUSED(data)
  
  	switch (node->custom1) {
  
- 		case 0: /* Add */
+ 		case NODE_MATH_ADD:
 -			*out = in0 + in1;
 +			out[0]->vec[0] = in0 + in1;
  			break;
- 		case 1: /* Subtract */
+ 		case NODE_MATH_SUB:
 -			*out = in0 - in1;
 +			out[0]->vec[0] = in0 - in1;
  			break;
- 		case 2: /* Multiply */
+ 		case NODE_MATH_MUL:
 -			*out = in0 * in1;
 +			out[0]->vec[0] = in0 * in1;
  			break;
- 		case 3: /* Divide */
+ 		case NODE_MATH_DIVIDE:
  		{
  			if (in1 == 0) /* We don't want to divide by zero. */
 -				*out = 0.0;
 +				out[0]->vec[0] = 0.0f;
  			else
 -				*out = in0 / in1;
 +				out[0]->vec[0] = in0 / in1;
  			break;
  		}
- 		case 4: /* Sine */
+ 		case NODE_MATH_SIN:
  		{
 -			*out = sinf(in0);
 +			out[0]->vec[0] = sinf(in0);
  			break;
  		}
- 		case 5: /* Cosine */
+ 		case NODE_MATH_COS:
  		{
 -			*out = cosf(in0);
 +			out[0]->vec[0] = cosf(in0);
  			break;
  		}
- 		case 6: /* Tangent */
+ 		case NODE_MATH_TAN:
  		{
 -			*out = tanf(in0);
 +			out[0]->vec[0] = tanf(in0);
  			break;
  		}
- 		case 7: /* Arc-Sine */
+ 		case NODE_MATH_ASIN:
  		{
  			/* Can't do the impossible... */
 -			if (in0 <= 1 && in0 >= -1)
 -				*out = asinf(in0);
 +			if (in0 <= 1.0f && in0 >= -1.0f)
 +				out[0]->vec[0] = asinf(in0);
  			else
 -				*out = 0.0;
 +				out[0]->vec[0] = 0.0f;
  			break;
  		}
- 		case 8: /* Arc-Cosine */
+ 		case NODE_MATH_ACOS:
  		{
  			/* Can't do the impossible... */
 -			if (in0 <= 1 && in0 >= -1)
 -				*out = acosf(in0);
 +			if (in0 <= 1.0f && in0 >= -1.0f)
 +				out[0]->vec[0]= acosf(in0);
  			else
 -				*out = 0.0;
 +				out[0]->vec[0] = 0.0;
  			break;
  		}
- 		case 9: /* Arc-Tangent */
+ 		case NODE_MATH_ATAN:
  		{
 -			*out = atan(in0);
 +			out[0]->vec[0] = atan(in0);
  			break;
  		}
- 		case 10: /* Power */
+ 		case NODE_MATH_POW:
  		{
  			/* Only raise negative numbers by full integers */
 -			if (in0 >= 0) {
 -				out[0] = pow(in0, in1);
 +			if (in0 >= 0.0f) {
 +				out[0]->vec[0] = pow(in0, in1);
  			}
  			else {
 -				float y_mod_1 = fmod(in1, 1);
 +				float y_mod_1 = fmod(in1, 1.0f);
  				if (y_mod_1 > 0.999f || y_mod_1 < 0.001f) {
 -					*out = pow(in0, floor(in1 + 0.5f));
 +					out[0]->vec[0] = powf(in0, floor(in1 + 0.5f));
  				}
  				else {
 -					*out = 0.0;
 +					out[0]->vec[0] = 0.0f;
  				}
  			}
  			break;
  		}
- 		case 11: /* Logarithm */
+ 		case NODE_MATH_LOG:
  		{
  			/* Don't want any imaginary numbers... */
 -			if (in0 > 0  && in1 > 0)
 -				*out = log(in0) / log(in1);
 +			if (in0 > 0.0f  && in1 > 0.0f)
 +				out[0]->vec[0] = log(in0) / log(in1);
  			else
 -				*out = 0.0;
 +				out[0]->vec[0] = 0.0;
  			break;
  		}
- 		case 12: /* Minimum */
+ 		case NODE_MATH_MIN:
  		{
  			if (in0 < in1)
 -				*out = in0;
 +				out[0]->vec[0] = in0;
  			else
 -				*out = in1;
 +				out[0]->vec[0] = in1;
  			break;
  		}
- 		case 13: /* Maximum */
+ 		case NODE_MATH_MAX:
  		{
  			if (in0 > in1)
 -				*out = in0;
 +				out[0]->vec[0] = in0;
  			else
 -				*out = in1;
 +				out[0]->vec[0] = in1;
  			break;
  		}
- 		case 14: /* Round */
+ 		case NODE_MATH_ROUND:
  		{
 -			*out = (in0 < 0) ? (int)(in0 - 0.5f) : (int)(in0 + 0.5f);
 +			out[0]->vec[0] = (in0 < 0.0f) ? (int)(in0 - 0.5f) : (int)(in0 + 0.5f);
  			break;
  		}
  
- 		case 15: /* Less Than */
+ 		case NODE_MATH_LESS:
  		{
  			if (in0 < in1)
 -				*out = 1.0f;
 +				out[0]->vec[0] = 1.0f;
  			else
 -				*out = 0.0f;
 +				out[0]->vec[0] = 0.0f;
  			break;
  		}
  
- 		case 16: /* Greater Than */
+ 		case NODE_MATH_GREATER:
  		{
  			if (in0 > in1)
 -				*out = 1.0f;
 +				out[0]->vec[0] = 1.0f;
  			else
 -				*out = 0.0f;
 +				out[0]->vec[0] = 0.0f;
  			break;
  		}
  
- 		case 17: /* Modulo */
+ 		case NODE_MATH_MOD:
  		{
  			if (in1 == 0.0f)
 -				*out = 0.0f;
 +				out[0]->vec[0] = 0.0f;
  			else
 -				*out = fmod(in0, in1);
 +				out[0]->vec[0] = fmod(in0, in1);
  			break;
  		}
  
- 		case 18: /* Absolute */
+ 		case NODE_MATH_ABS:
  		{
 -			*out = fabsf(in0);
 +			out[0]->vec[0] = fabsf(in0);
  			break;
  		}




More information about the Bf-blender-cvs mailing list