forked from blender/blender
MaterialX: Implement Gradient Texture node. #28
@ -177,17 +177,11 @@ NODE_SHADER_MATERIALX_BEGIN
|
|||||||
res = vector.extract(1).atan2(vector.extract(0)) / (val(float(M_PI * 2.0f))) + val(0.5f);
|
res = vector.extract(1).atan2(vector.extract(0)) / (val(float(M_PI * 2.0f))) + val(0.5f);
|
||||||
break;
|
break;
|
||||||
case SHD_BLEND_QUADRATIC_SPHERE:
|
case SHD_BLEND_QUADRATIC_SPHERE:
|
||||||
/* Bias a little bit for the case where input is a unit length vector,
|
res = (val(1.0f) - vector.dotproduct(vector).sqrt()).max(val(0.0f));
|
||||||
* to get exactly zero instead of a small random value depending
|
|
||||||
* on float precision. */
|
|
||||||
res = (val(0.999999f) - vector.dotproduct(vector).sqrt()).max(val(0.0f));
|
|
||||||
res = res * res;
|
res = res * res;
|
||||||
break;
|
break;
|
||||||
case SHD_BLEND_SPHERICAL:
|
case SHD_BLEND_SPHERICAL:
|
||||||
/* Bias a little bit for the case where input is a unit length vector,
|
res = (val(1.0f) - vector.dotproduct(vector).sqrt()).max(val(0.0f));
|
||||||
* to get exactly zero instead of a small random value depending
|
|
||||||
* on float precision. */
|
|
||||||
res = (val(0.999999f) - vector.dotproduct(vector).sqrt()).max(val(0.0f));
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
BLI_assert_unreachable();
|
BLI_assert_unreachable();
|
||||||
|
Loading…
Reference in New Issue
Block a user