6#include <Common/assertion.h>
67 PH_ASSERT_UNREACHABLE_SECTION();
Detailed information regarding a ray-primitive intersection.
Definition HitDetail.h:26
Lightweight ray intersection testing and reporting object. If an intersection is found,...
Definition HitProbe.h:27
bool mayOverlapVolume(const math::AABB3D &volume) const override
Conservatively checks whether this object overlaps a volume.
Definition PEmpty.h:70
bool isOccluding(const Ray &ray) const override
Determines whether this object blocks the ray.
Definition PEmpty.h:46
PEmpty()
Definition PEmpty.h:37
bool reintersect(const Ray &ray, HitProbe &probe, const Ray &srcRay, HitProbe &srcProbe) const override
Intersect the intersected object again with a different ray.
Definition PEmpty.h:51
math::AABB3D calcAABB() const override
Calculates Axis-Aligned Bounding Box (AABB) of itself.
Definition PEmpty.h:75
void calcHitDetail(const Ray &ray, HitProbe &probe, HitDetail *out_detail) const override
Calculates properties of a hit, such as coordinates and normal.
Definition PEmpty.h:60
bool isIntersecting(const Ray &ray, HitProbe &probe) const override
Determine whether a given ray hits the object.
Definition PEmpty.h:41
A physical shape in the scene.
Definition Primitive.h:23
Represents a ray in space.
Definition Ray.h:21
static TAABB3D makeEmpty()
Definition TAABB3D.ipp:15
The root for all renderer implementations.
Definition EEngineProject.h:6