X-Git-Url: https://git.rohieb.name/MicroTrace.git/blobdiff_plain/0e3446ceb6fd6db0cb292671f37b46daaa2aed5b..d09f84c0fc495347e9f73c362819f5b726b23dda:/Primitive.hxx diff --git a/Primitive.hxx b/Primitive.hxx index 04e201f..14233ad 100644 --- a/Primitive.hxx +++ b/Primitive.hxx @@ -3,6 +3,7 @@ #include "Ray.hxx" #include "Shader.hxx" +#include "Box.hxx" class Primitive { @@ -13,8 +14,10 @@ public: virtual bool Intersect(Ray &ray) = 0; virtual bool Occluded(Ray& ray); virtual Vec3f GetNormal(Ray& ray) = 0; - + virtual Box CalcBounds() = 0; + virtual bool InVoxel(const Box& box) = 0; Shader* shader(); + protected: Shader* m_shader; };