Photon Engine 2.0.0-beta
A physically based renderer.
|
General information about a ray-surface intersection event. More...
#include <SurfaceHit.h>
Public Member Functions | |
SurfaceHit () | |
SurfaceHit (const Ray &ray, const HitProbe &probe, SurfaceHitReason reason) | |
Construct from the ray and probe involved in a hit event. A full hit detail will be computed. If this is undesirable (e.g., full hit detail is not required), use the overload which let you set the hit detail directly. | |
SurfaceHit (const Ray &ray, const HitProbe &probe, const HitDetail &detail, SurfaceHitReason reason) | |
SurfaceHit | switchChannel (uint32 newChannel) const |
bool | reintersect (const Ray &ray, HitProbe &probe) const |
Intersect the intersected object again with a different ray. | |
bool | hasSurfaceOptics () const |
bool | hasInteriorOptics () const |
bool | hasExteriorOptics () const |
const HitDetail & | getDetail () const |
SurfaceHitReason | getReason () const |
const Ray & | getRay () const |
const Ray & | getIncidentRay () const |
Convenient method for getRay() where getReason() contains ESurfaceHitReason::IncidentRay . | |
const Time & | getTime () const |
math::Vector3R | getPos () const |
math::Vector3R | getShadingNormal () const |
math::Vector3R | getGeometryNormal () const |
const Emitter * | getSurfaceEmitter () const |
const SurfaceOptics * | getSurfaceOptics () const |
const VolumeOptics * | getInteriorOptics () const |
const VolumeOptics * | getExteriorOptics () const |
General information about a ray-surface intersection event.
|
inline |
|
inline |
Construct from the ray and probe involved in a hit event. A full hit detail will be computed. If this is undesirable (e.g., full hit detail is not required), use the overload which let you set the hit detail directly.
|
inline |
|
inline |
const VolumeOptics * ph::SurfaceHit::getExteriorOptics | ( | ) | const |
|
inline |
|
inline |
Convenient method for getRay()
where getReason()
contains ESurfaceHitReason::IncidentRay
.
const VolumeOptics * ph::SurfaceHit::getInteriorOptics | ( | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
const Emitter * ph::SurfaceHit::getSurfaceEmitter | ( | ) | const |
const SurfaceOptics * ph::SurfaceHit::getSurfaceOptics | ( | ) | const |
|
inline |
bool ph::SurfaceHit::hasExteriorOptics | ( | ) | const |
bool ph::SurfaceHit::hasInteriorOptics | ( | ) | const |
bool ph::SurfaceHit::hasSurfaceOptics | ( | ) | const |
Intersect the intersected object again with a different ray.
ray | The different ray to use for intersection test. |
probe | The probe to record the intersection. |
ray
and probe
). SurfaceHit ph::SurfaceHit::switchChannel | ( | uint32 | newChannel | ) | const |