]> git.localhorst.tv Git - blank.git/blobdiff - src/geometry.hpp
begun block lighting implementation
[blank.git] / src / geometry.hpp
index e8ead98de83bc75b1b32481cca16673371c966b3..16651d82be46427b89296784c46735cc65a2c9c2 100644 (file)
@@ -7,6 +7,11 @@
 
 namespace blank {
 
+constexpr float PI = 3.141592653589793238462643383279502884;
+constexpr float PI_0p5 = PI * 0.5f;
+constexpr float PI_1p5 = PI * 1.5f;
+constexpr float PI_2p0 = PI * 2.0f;
+
 struct AABB {
        glm::vec3 min;
        glm::vec3 max;
@@ -23,7 +28,14 @@ struct Ray {
        glm::vec3 dir;
 };
 
-bool Intersection(const Ray &, const AABB &, const glm::mat4 &M, float *dist = nullptr);
+bool Intersection(
+       const Ray &,
+       const AABB &,
+       const glm::mat4 &M,
+       float *dist = nullptr,
+       glm::vec3 *normal = nullptr);
+
+bool CullTest(const AABB &box, const glm::mat4 &MVP);
 
 }