MaterialX: Implement Gradient Texture node. #28

Merged
Bogdan Nagirniak merged 6 commits from Vasyl-Pidhirskyi/blender:BLEN-550 into matx-export-material 2023-09-21 09:31:28 +02:00
Showing only changes of commit 9ccafcfe67 - Show all commits

View File

@ -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();