From cbcd21b58029d50ae50efc65f3111d137665d2ee Mon Sep 17 00:00:00 2001 From: Colby Klein Date: Sat, 25 Oct 2014 13:49:06 -0700 Subject: [PATCH] Fix mat4 and intersect. --- cpml/intersect.lua | 10 +++++++--- cpml/mat4.lua | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cpml/intersect.lua b/cpml/intersect.lua index 94ea862..8d5d10d 100644 --- a/cpml/intersect.lua +++ b/cpml/intersect.lua @@ -1,9 +1,11 @@ -local current_folder = (...):gsub('%.[^%.]+$', '') +local current_folder = (...):gsub('%.[^%.]+$', '') .. "." local vec3 = require(current_folder .. "vec3") local constants = require(current_folder .. "constants") +local intersect = {} + -- http://www.lighthouse3d.com/tutorials/maths/ray-triangle-intersection/ -function cpml.ray_triangle(ray, triangle) +function intersect.ray_triangle(ray, triangle) assert(ray.point ~= nil) assert(ray.direction ~= nil) assert(#triangle == 3) @@ -53,7 +55,7 @@ end -- Algorithm is ported from the C algorithm of -- Paul Bourke at http://local.wasp.uwa.edu.au/~pbourke/geometry/lineline3d/ -- Archive.org am hero \o/ -function cpml.line_line(p1, p2, p3, p4) +function intersect.line_line(p1, p2, p3, p4) local epsilon = constants.FLT_EPSILON local resultSegmentPoint1 = vec3(0,0,0) local resultSegmentPoint2 = vec3(0,0,0) @@ -87,3 +89,5 @@ function cpml.line_line(p1, p2, p3, p4) return true, resultSegmentPoint1, resultSegmentPoint2 end + +return intersect \ No newline at end of file diff --git a/cpml/mat4.lua b/cpml/mat4.lua index 7901885..cb4d6a4 100644 --- a/cpml/mat4.lua +++ b/cpml/mat4.lua @@ -1,7 +1,7 @@ -- double 4x4, 1-based, column major -- local matrix = {} -local current_folder = (...):gsub('%.[^%.]+$', '') +local current_folder = (...):gsub('%.[^%.]+$', '') .. "." local constants = require(current_folder .. "constants") local mat4 = {}