Photon Engine 2.0.0-beta
A physically based renderer.
|
#include <EmitterSampler.h>
Public Member Functions | |
virtual | ~EmitterSampler () |
virtual void | update (TSpanView< const Emitter * > emitters)=0 |
virtual const Emitter * | pickEmitter (SampleFlow &sampleFlow, real *out_PDF) const =0 |
virtual void | genDirectSample (DirectEnergySampleQuery &query, SampleFlow &sampleFlow, HitProbe &probe) const =0 |
Sample direct lighting for a target position. | |
virtual void | calcDirectPdf (DirectEnergyPdfQuery &query) const =0 |
Calculate the PDF of direct lighting for a target position. | |
|
virtualdefault |
|
pure virtual |
Calculate the PDF of direct lighting for a target position.
Implemented in ph::ESPowerFavoring, and ph::ESUniformRandom.
|
pure virtual |
Sample direct lighting for a target position.
DirectEnergySampleOutput::getObservationRay()
and probe
). Implemented in ph::ESPowerFavoring, and ph::ESUniformRandom.
|
pure virtual |
Implemented in ph::ESPowerFavoring, and ph::ESUniformRandom.
Implemented in ph::ESPowerFavoring, and ph::ESUniformRandom.