Public Member Functions | |
EmissionIntegrator (float ss) | |
void | RequestSamples (Sample *sample, const Scene *scene) |
Spectrum | Transmittance (const Scene *, const Ray &ray, const Sample *sample, float *alpha) const |
Spectrum | Li (const Scene *, const RayDifferential &ray, const Sample *sample, float *alpha) const |
Private Attributes | |
float | stepSize |
int | tauSampleOffset |
int | scatterSampleOffset |
Definition at line 29 of file emission.cpp.
EmissionIntegrator::EmissionIntegrator | ( | float | ss | ) | [inline] |
Definition at line 32 of file emission.cpp.
References stepSize.
Referenced by CreateVolumeIntegrator().
Reimplemented from Integrator.
Definition at line 42 of file emission.cpp.
References Sample::Add1D(), scatterSampleOffset, and tauSampleOffset.
Spectrum EmissionIntegrator::Transmittance | ( | const Scene * | scene, | |
const Ray & | ray, | |||
const Sample * | sample, | |||
float * | alpha | |||
) | const [virtual] |
Implements VolumeIntegrator.
Definition at line 48 of file emission.cpp.
References Sample::oneD, RandomFloat(), stepSize, VolumeRegion::Tau(), tauSampleOffset, and Scene::volumeRegion.
Spectrum EmissionIntegrator::Li | ( | const Scene * | scene, | |
const RayDifferential & | ray, | |||
const Sample * | sample, | |||
float * | alpha | |||
) | const [virtual] |
Implements Integrator.
Definition at line 60 of file emission.cpp.
References Ceil2Int(), Ray::d, VolumeRegion::IntersectP(), VolumeRegion::Lve(), N, Sample::oneD, RandomFloat(), scatterSampleOffset, stepSize, VolumeRegion::Tau(), Scene::volumeRegion, and Spectrum::y().
float EmissionIntegrator::stepSize [private] |
Definition at line 38 of file emission.cpp.
Referenced by CreateVolumeIntegrator(), EmissionIntegrator(), Li(), and Transmittance().
int EmissionIntegrator::tauSampleOffset [private] |
int EmissionIntegrator::scatterSampleOffset [private] |