Browse Source

vec3.project;

bjorn 7 years ago
parent
commit
2d348ca037
1 changed files with 11 additions and 0 deletions
  1. 11 0
      maf.lua

+ 11 - 0
maf.lua

@@ -129,6 +129,17 @@ vec3 = {
       return out
     end,
 
+    project = function(v, u, out)
+      out = out or v
+      local unorm = vtmp1
+      u:normalize(unorm)
+      local dot = v:dot(unorm)
+      out.x = unorm.x * dot
+      out.y = unorm.y * dot
+      out.z = unorm.z * dot
+      return out
+    end,
+
     rotate = function(v, q, out)
       out = out or v
       local u, c, o = vtmp1, vtmp2, out