summaryrefslogtreecommitdiff
path: root/src/3d/sdf_cpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/3d/sdf_cpu.h')
-rw-r--r--src/3d/sdf_cpu.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/3d/sdf_cpu.h b/src/3d/sdf_cpu.h
index e0f1b3f..e7f9f47 100644
--- a/src/3d/sdf_cpu.h
+++ b/src/3d/sdf_cpu.h
@@ -44,13 +44,9 @@ inline float sdPlane(vec3 p, vec3 n, float h) {
*/
template <typename F>
inline vec3 calc_normal(vec3 p, F sdf_func, float e = 0.001f) {
- const float d2e = 2.0f * e;
- return vec3(sdf_func(vec3(p.x + e, p.y, p.z)) -
- sdf_func(vec3(p.x - e, p.y, p.z)),
- sdf_func(vec3(p.x, p.y + e, p.z)) -
- sdf_func(vec3(p.x, p.y - e, p.z)),
- sdf_func(vec3(p.x, p.y, p.z + e)) -
- sdf_func(vec3(p.x, p.y, p.z - e)))
+ return vec3(sdf_func(vec3(p.x + e, p.y, p.z)) - sdf_func(vec3(p.x - e, p.y, p.z)),
+ sdf_func(vec3(p.x, p.y + e, p.z)) - sdf_func(vec3(p.x, p.y - e, p.z)),
+ sdf_func(vec3(p.x, p.y, p.z + e)) - sdf_func(vec3(p.x, p.y, p.z - e)))
.normalize();
}