#include <light.h>
Public Member Functions | |
void | SetSegment (const Point &p1, const Point &p2, float time) |
void | SetRay (const Point &p, const Vector &w, float time) |
bool | Unoccluded (const Scene *scene) const |
bool | TestOcclusion (const TsPack *tspack, const Scene *scene, SWCSpectrum *f, float *pdf=NULL, float *pdfR=NULL) const |
void | Transmittance (const TsPack *tspack, const Scene *scene, const Sample *sample, SWCSpectrum *const L) const |
Public Attributes | |
Ray | r |
Definition at line 104 of file light.h.
Definition at line 118 of file light.h.
References lux::Normalize(), r, and lux::Ray::time.
Referenced by lux::SunLight::Sample_L(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLightIS::Sample_L(), lux::InfiniteAreaLight::Sample_L(), and lux::DistantLight::Sample_L().
Definition at line 107 of file light.h.
References lux::MachineEpsilon::E(), lux::Vector::Length(), cimg_library::cimg::max(), cimg_library::cimg::min(), r, and lux::Ray::time.
Referenced by lux::SunLight::Sample_L(), lux::SpotLight::Sample_L(), lux::SkyLight::Sample_L(), lux::ProjectionLight::Sample_L(), lux::PointLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), lux::AreaLight::Sample_L(), lux::PerspectiveCamera::Sample_W(), lux::EnvironmentCamera::Sample_W(), and visible().
bool VisibilityTester::TestOcclusion | ( | const TsPack * | tspack, | |
const Scene * | scene, | |||
SWCSpectrum * | f, | |||
float * | pdf = NULL , |
|||
float * | pdfR = NULL | |||
) | const |
Definition at line 41 of file light.cpp.
References lux::AbsDot(), lux::SWCSpectrum::Black(), lux::BSDF_SPECULAR, lux::BSDF_TRANSMISSION, lux::Ray::d, lux::BSDF::dgShading, lux::MachineEpsilon::E(), lux::BSDF::f(), lux::Intersection::GetBSDF(), lux::Scene::Intersect(), lux::Ray::maxt, lux::Ray::mint, lux::DifferentialGeometry::nn, lux::Normalize(), lux::BSDF::Pdf(), r, lux::TsPack::time, and lux::Ray::time.
Referenced by lux::SingleScattering::Li(), and visible().
void VisibilityTester::Transmittance | ( | const TsPack * | tspack, | |
const Scene * | scene, | |||
const Sample * | sample, | |||
SWCSpectrum *const | L | |||
) | const |
Definition at line 70 of file light.cpp.
References r, and lux::Scene::Transmittance().
Referenced by lux::WhittedIntegrator::Li(), and lux::SingleScattering::Li().
bool VisibilityTester::Unoccluded | ( | const Scene * | scene | ) | const |
Definition at line 34 of file light.cpp.
References lux::Scene::IntersectP(), and r.
Referenced by lux::WhittedIntegrator::Li(), and lux::MLTPathIntegrator::Li().
Definition at line 127 of file light.h.
Referenced by SetRay(), SetSegment(), TestOcclusion(), Transmittance(), and Unoccluded().