From 93fa0b2e214fbb70e6c03f5ca7536c7c32544aa7 Mon Sep 17 00:00:00 2001 From: ladevieq Date: Sun, 1 Aug 2021 18:45:50 +0200 Subject: Pack bvh nodes, optimize vertices size --- include/aabb.hpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'include/aabb.hpp') diff --git a/include/aabb.hpp b/include/aabb.hpp index 3a4e680..9bc69d1 100644 --- a/include/aabb.hpp +++ b/include/aabb.hpp @@ -2,15 +2,20 @@ #define __AABB_HPP_ #include "vec3.hpp" +#include "triangle.hpp" #include #include class aabb { public: aabb() = default; - aabb(vec3 min_point, vec3 max_point): minimum(min_point), maximum(max_point) {} - aabb(vec3 position, float radius): minimum(position - vec3(radius)), maximum(position + vec3(radius)) {} - aabb(point3 &v1, point3 &v2, point3 &v3) { + aabb(vec3 &min_point, vec3 &max_point): minimum(min_point), maximum(max_point) {} + aabb(vec3 &position, float radius): minimum(position - vec3(radius)), maximum(position + vec3(radius)) {} + aabb(triangle &tri) { + auto &v1 = tri.v1.position; + auto &v2 = tri.v2.position; + auto &v3 = tri.v3.position; + minimum.x = fmin(fmin(v1.x, v2.x), v3.x); minimum.y = fmin(fmin(v1.y, v2.y), v3.y); minimum.z = fmin(fmin(v1.z, v2.z), v3.z); -- cgit v1.3