diff options
Diffstat (limited to 'src/vec4ops')
| -rw-r--r-- | src/vec4ops/transform4d.cpp | 12 | ||||
| -rw-r--r-- | src/vec4ops/vec4ops.h | 4 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/vec4ops/transform4d.cpp b/src/vec4ops/transform4d.cpp index 5cc51f3..66ca8e3 100644 --- a/src/vec4ops/transform4d.cpp +++ b/src/vec4ops/transform4d.cpp @@ -15,4 +15,16 @@ glm::vec4 Vec4Ops::inverseTransformPoint4(glm::vec4 point4, glm::mat4 inverseTr point4 += inverseTranslationPointVector; point4 = inverseTranslationPointVector * point4; return point4; +} + +glm::vec4 Vec4Ops::transformDir4(glm::vec4 dir4, glm::mat4 transformDirectionMatrix) { + // do the direction + dir4 = transformDirectionMatrix * dir4; + return dir4; +} + +glm::vec4 Vec4Ops::inverseTransformDir4(glm::vec4 dir4, glm::mat4 inverseTransformDirectionMatrix) { + // do the direction + dir4 = inverseTransformDirectionMatrix * dir4; + return dir4; }
\ No newline at end of file diff --git a/src/vec4ops/vec4ops.h b/src/vec4ops/vec4ops.h index d1c3ac8..f48dcff 100644 --- a/src/vec4ops/vec4ops.h +++ b/src/vec4ops/vec4ops.h @@ -32,6 +32,10 @@ public: static glm::vec4 dot4(glm::vec4 u, glm::vec4 v); static glm::mat4 getViewMatrix4(glm::vec4 fromPoint, glm::vec4 toPoint, glm::vec4 upVector, glm::vec4 lookVector); + + static glm::vec4 transformDir4(glm::vec4 dir4, glm::mat4 transformDirectionMatrix); + + glm::vec4 inverseTransformDir4(glm::vec4 dir4, glm::mat4 inverseTransformDirectionMatrix); }; #endif //PROJECTS_RAY_VEC4OPS_H |
