aboutsummaryrefslogtreecommitdiff
path: root/builtin/common/vector.lua
diff options
context:
space:
mode:
Diffstat (limited to 'builtin/common/vector.lua')
-rw-r--r--builtin/common/vector.lua8
1 files changed, 8 insertions, 0 deletions
diff --git a/builtin/common/vector.lua b/builtin/common/vector.lua
index a08472e32..b662f73fc 100644
--- a/builtin/common/vector.lua
+++ b/builtin/common/vector.lua
@@ -125,6 +125,14 @@ function vector.distance(a, b)
return math.sqrt(x * x + y * y + z * z)
end
+-- square roots are expensive
+function vector.distance_sq(a, b)
+ local x = a.x - b.x
+ local y = a.y - b.y
+ local z = a.z - b.z
+ return x * x + y * y + z * z
+end
+
function vector.direction(pos1, pos2)
return vector.subtract(pos2, pos1):normalize()
end