Cleanup: Assign corresponding expressions to variable params.max_distance
Pull Request: https://projects.blender.org/blender/blender/pulls/109328
This commit is contained in:
committed by
Brecht Van Lommel
parent
71273df2d5
commit
c9fbbea261
@@ -75,7 +75,7 @@
|
||||
float fractal_voronoi_distance_to_edge(VoronoiParams params, T coord) \
|
||||
{ \
|
||||
float amplitude = 1.0; \
|
||||
float max_amplitude = 0.5 + 0.5 * params.randomness; \
|
||||
float max_amplitude = params.max_distance; \
|
||||
float scale = 1.0; \
|
||||
float distance = 8.0; \
|
||||
\
|
||||
@@ -89,7 +89,7 @@
|
||||
break; \
|
||||
} \
|
||||
else if (i <= params.detail) { \
|
||||
max_amplitude = mix(max_amplitude, (0.5 + 0.5 * params.randomness) / scale, amplitude); \
|
||||
max_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude); \
|
||||
distance = mix(distance, min(distance, octave_distance / scale), amplitude); \
|
||||
scale *= params.lacunarity; \
|
||||
amplitude *= params.roughness; \
|
||||
@@ -97,8 +97,7 @@
|
||||
else { \
|
||||
float remainder = params.detail - floor(params.detail); \
|
||||
if (remainder != 0.0) { \
|
||||
float lerp_amplitude = mix( \
|
||||
max_amplitude, (0.5 + 0.5 * params.randomness) / scale, amplitude); \
|
||||
float lerp_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude); \
|
||||
max_amplitude = mix(max_amplitude, lerp_amplitude, remainder); \
|
||||
float lerp_distance = mix(distance, min(distance, octave_distance / scale), amplitude); \
|
||||
distance = mix(distance, min(distance, lerp_distance), remainder); \
|
||||
|
||||
@@ -53,6 +53,7 @@ shader node_voronoi_texture(
|
||||
coord *= Scale;
|
||||
|
||||
if (feature == "distance_to_edge") {
|
||||
params.max_distance = 0.5 + 0.5 * params.randomness;
|
||||
if (dimensions == "1D") {
|
||||
Distance = fractal_voronoi_distance_to_edge(params, w);
|
||||
}
|
||||
|
||||
@@ -926,7 +926,7 @@ ccl_device float fractal_voronoi_distance_to_edge(ccl_private const VoronoiParam
|
||||
const T coord)
|
||||
{
|
||||
float amplitude = 1.0f;
|
||||
float max_amplitude = 0.5f + 0.5f * params.randomness;
|
||||
float max_amplitude = params.max_distance;
|
||||
float scale = 1.0f;
|
||||
float distance = 8.0f;
|
||||
|
||||
@@ -941,7 +941,7 @@ ccl_device float fractal_voronoi_distance_to_edge(ccl_private const VoronoiParam
|
||||
break;
|
||||
}
|
||||
else if (i <= params.detail) {
|
||||
max_amplitude = mix(max_amplitude, (0.5f + 0.5f * params.randomness) / scale, amplitude);
|
||||
max_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude);
|
||||
distance = mix(distance, min(distance, octave_distance / scale), amplitude);
|
||||
scale *= params.lacunarity;
|
||||
amplitude *= params.roughness;
|
||||
@@ -949,8 +949,7 @@ ccl_device float fractal_voronoi_distance_to_edge(ccl_private const VoronoiParam
|
||||
else {
|
||||
float remainder = params.detail - floorf(params.detail);
|
||||
if (remainder != 0.0f) {
|
||||
float lerp_amplitude = mix(
|
||||
max_amplitude, (0.5f + 0.5f * params.randomness) / scale, amplitude);
|
||||
float lerp_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude);
|
||||
max_amplitude = mix(max_amplitude, lerp_amplitude, remainder);
|
||||
float lerp_distance = mix(distance, min(distance, octave_distance / scale), amplitude);
|
||||
distance = mix(distance, min(distance, lerp_distance), remainder);
|
||||
@@ -1053,6 +1052,7 @@ ccl_device_noinline int svm_node_tex_voronoi(KernelGlobals kg,
|
||||
switch (params.feature) {
|
||||
case NODE_VORONOI_DISTANCE_TO_EDGE: {
|
||||
float distance = 0.0f;
|
||||
params.max_distance = 0.5f + 0.5f * params.randomness;
|
||||
switch (dimensions) {
|
||||
case 1:
|
||||
distance = fractal_voronoi_distance_to_edge(params, w);
|
||||
|
||||
@@ -2310,7 +2310,7 @@ template<typename T>
|
||||
float fractal_voronoi_distance_to_edge(const VoronoiParams ¶ms, const T coord)
|
||||
{
|
||||
float amplitude = 1.0f;
|
||||
float max_amplitude = 0.5f + 0.5f * params.randomness;
|
||||
float max_amplitude = params.max_distance;
|
||||
float scale = 1.0f;
|
||||
float distance = 8.0f;
|
||||
|
||||
@@ -2325,7 +2325,7 @@ float fractal_voronoi_distance_to_edge(const VoronoiParams ¶ms, const T coor
|
||||
break;
|
||||
}
|
||||
else if (i <= params.detail) {
|
||||
max_amplitude = mix(max_amplitude, (0.5f + 0.5f * params.randomness) / scale, amplitude);
|
||||
max_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude);
|
||||
distance = mix(distance, math::min(distance, octave_distance / scale), amplitude);
|
||||
scale *= params.lacunarity;
|
||||
amplitude *= params.roughness;
|
||||
@@ -2333,8 +2333,7 @@ float fractal_voronoi_distance_to_edge(const VoronoiParams ¶ms, const T coor
|
||||
else {
|
||||
float remainder = params.detail - floorf(params.detail);
|
||||
if (remainder != 0.0f) {
|
||||
float lerp_amplitude = mix(
|
||||
max_amplitude, (0.5f + 0.5f * params.randomness) / scale, amplitude);
|
||||
float lerp_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude);
|
||||
max_amplitude = mix(max_amplitude, lerp_amplitude, remainder);
|
||||
float lerp_distance = mix(
|
||||
distance, math::min(distance, octave_distance / scale), amplitude);
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
float fractal_voronoi_distance_to_edge(VoronoiParams params, T coord) \
|
||||
{ \
|
||||
float amplitude = 1.0; \
|
||||
float max_amplitude = 0.5 + 0.5 * params.randomness; \
|
||||
float max_amplitude = params.max_distance; \
|
||||
float scale = 1.0; \
|
||||
float distance = 8.0; \
|
||||
\
|
||||
@@ -84,7 +84,7 @@
|
||||
break; \
|
||||
} \
|
||||
else if (i <= params.detail) { \
|
||||
max_amplitude = mix(max_amplitude, (0.5 + 0.5 * params.randomness) / scale, amplitude); \
|
||||
max_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude); \
|
||||
distance = mix(distance, min(distance, octave_distance / scale), amplitude); \
|
||||
scale *= params.lacunarity; \
|
||||
amplitude *= params.roughness; \
|
||||
@@ -92,8 +92,7 @@
|
||||
else { \
|
||||
float remainder = params.detail - floor(params.detail); \
|
||||
if (remainder != 0.0) { \
|
||||
float lerp_amplitude = mix( \
|
||||
max_amplitude, (0.5 + 0.5 * params.randomness) / scale, amplitude); \
|
||||
float lerp_amplitude = mix(max_amplitude, params.max_distance / scale, amplitude); \
|
||||
max_amplitude = mix(max_amplitude, lerp_amplitude, remainder); \
|
||||
float lerp_distance = mix(distance, min(distance, octave_distance / scale), amplitude); \
|
||||
distance = mix(distance, min(distance, lerp_distance), remainder); \
|
||||
|
||||
@@ -147,6 +147,7 @@ void node_tex_voronoi_distance_to_edge_1d(vec3 coord,
|
||||
|
||||
w *= scale;
|
||||
|
||||
params.max_distance = 0.5 + 0.5 * params.randomness;
|
||||
outDistance = fractal_voronoi_distance_to_edge(params, w);
|
||||
}
|
||||
|
||||
@@ -292,6 +293,7 @@ void node_tex_voronoi_distance_to_edge_2d(vec3 coord,
|
||||
|
||||
coord *= scale;
|
||||
|
||||
params.max_distance = 0.5 + 0.5 * params.randomness;
|
||||
outDistance = fractal_voronoi_distance_to_edge(params, coord.xy);
|
||||
}
|
||||
|
||||
@@ -437,6 +439,7 @@ void node_tex_voronoi_distance_to_edge_3d(vec3 coord,
|
||||
|
||||
coord *= scale;
|
||||
|
||||
params.max_distance = 0.5 + 0.5 * params.randomness;
|
||||
outDistance = fractal_voronoi_distance_to_edge(params, coord);
|
||||
}
|
||||
|
||||
@@ -589,6 +592,7 @@ void node_tex_voronoi_distance_to_edge_4d(vec3 coord,
|
||||
w *= scale;
|
||||
coord *= scale;
|
||||
|
||||
params.max_distance = 0.5 + 0.5 * params.randomness;
|
||||
outDistance = fractal_voronoi_distance_to_edge(params, vec4(coord, w));
|
||||
}
|
||||
|
||||
|
||||
@@ -612,6 +612,7 @@ class VoronoiDistToEdgeFunction : public mf::MultiFunction {
|
||||
params.roughness = roughness[i];
|
||||
params.lacunarity = lacunarity[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
params.max_distance = 0.5f + 0.5f * params.randomness;
|
||||
|
||||
r_distance[i] = noise::fractal_voronoi_distance_to_edge<float>(params,
|
||||
w[i] * params.scale);
|
||||
@@ -625,6 +626,7 @@ class VoronoiDistToEdgeFunction : public mf::MultiFunction {
|
||||
params.roughness = roughness[i];
|
||||
params.lacunarity = lacunarity[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
params.max_distance = 0.5f + 0.5f * params.randomness;
|
||||
|
||||
r_distance[i] = noise::fractal_voronoi_distance_to_edge<float2>(
|
||||
params, float2{vector[i].x, vector[i].y} * params.scale);
|
||||
@@ -638,6 +640,7 @@ class VoronoiDistToEdgeFunction : public mf::MultiFunction {
|
||||
params.roughness = roughness[i];
|
||||
params.lacunarity = lacunarity[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
params.max_distance = 0.5f + 0.5f * params.randomness;
|
||||
|
||||
r_distance[i] = noise::fractal_voronoi_distance_to_edge<float3>(
|
||||
params, vector[i] * params.scale);
|
||||
@@ -651,6 +654,7 @@ class VoronoiDistToEdgeFunction : public mf::MultiFunction {
|
||||
params.roughness = roughness[i];
|
||||
params.lacunarity = lacunarity[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
params.max_distance = 0.5f + 0.5f * params.randomness;
|
||||
|
||||
r_distance[i] = noise::fractal_voronoi_distance_to_edge<float4>(
|
||||
params, float4{vector[i].x, vector[i].y, vector[i].z, w[i]} * params.scale);
|
||||
@@ -735,6 +739,7 @@ class VoronoiNSphereFunction : public mf::MultiFunction {
|
||||
mask.foreach_index([&](const int64_t i) {
|
||||
params.scale = scale[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
|
||||
r_radius[i] = noise::voronoi_n_sphere_radius(params, w[i] * params.scale);
|
||||
});
|
||||
break;
|
||||
@@ -743,6 +748,7 @@ class VoronoiNSphereFunction : public mf::MultiFunction {
|
||||
mask.foreach_index([&](const int64_t i) {
|
||||
params.scale = scale[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
|
||||
r_radius[i] = noise::voronoi_n_sphere_radius(
|
||||
params, float2{vector[i].x, vector[i].y} * params.scale);
|
||||
});
|
||||
@@ -752,6 +758,7 @@ class VoronoiNSphereFunction : public mf::MultiFunction {
|
||||
mask.foreach_index([&](const int64_t i) {
|
||||
params.scale = scale[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
|
||||
r_radius[i] = noise::voronoi_n_sphere_radius(params, vector[i] * params.scale);
|
||||
});
|
||||
break;
|
||||
@@ -760,6 +767,7 @@ class VoronoiNSphereFunction : public mf::MultiFunction {
|
||||
mask.foreach_index([&](const int64_t i) {
|
||||
params.scale = scale[i];
|
||||
params.randomness = std::min(std::max(randomness[i], 0.0f), 1.0f);
|
||||
|
||||
r_radius[i] = noise::voronoi_n_sphere_radius(
|
||||
params, float4{vector[i].x, vector[i].y, vector[i].z, w[i]} * params.scale);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user