Photon Engine 2.0.0-beta
A physically based renderer.
|
#include <OmniModulatedEmitter.h>
Public Member Functions | |
OmniModulatedEmitter (const Emitter *source) | |
Given a source, construct its modulated version. Feature set is inherited from source . If you want to specify a specific feature set, use OmniModulatedEmitter(const Emitter*, EmitterFeatureSet) . | |
OmniModulatedEmitter (const Emitter *source, EmitterFeatureSet featureSet) | |
void | evalEmittedEnergy (const SurfaceHit &Xe, math::Spectrum *out_energy) const override |
Evaluate emitted energy from a point on the surface. | |
void | genDirectSample (DirectEnergySampleQuery &query, SampleFlow &sampleFlow, HitProbe &probe) const override |
Sample direct lighting for a target position. | |
void | calcDirectPdf (DirectEnergyPdfQuery &query) const override |
Calculate the PDF of direct lighting for a target position. | |
void | emitRay (EnergyEmissionSampleQuery &query, SampleFlow &sampleFlow, HitProbe &probe) const override |
Emit a ray that carries some amount of energy from this emitter. | |
real | calcRadiantFluxApprox () const override |
void | setFilter (const std::shared_ptr< TTexture< math::Spectrum > > &filter) |
const Emitter & | getSource () const |
Public Member Functions inherited from ph::Emitter | |
Emitter (EmitterFeatureSet featureSet=defaultFeatureSet) | |
virtual | ~Emitter () |
EmitterFeatureSet | getFeatureSet () const |
Additional Inherited Members | |
Static Public Attributes inherited from ph::Emitter | |
static constexpr auto | defaultFeatureSet = EmitterFeatureSet(EEmitterFeatureSet::Default) |
|
explicit |
Given a source, construct its modulated version. Feature set is inherited from source
. If you want to specify a specific feature set, use OmniModulatedEmitter(const Emitter*, EmitterFeatureSet)
.
ph::OmniModulatedEmitter::OmniModulatedEmitter | ( | const Emitter * | source, |
EmitterFeatureSet | featureSet ) |
|
overridevirtual |
Calculate the PDF of direct lighting for a target position.
EEmitterFeatureSet::DirectSample
Implements ph::Emitter.
|
overridevirtual |
Reimplemented from ph::Emitter.
|
overridevirtual |
Emit a ray that carries some amount of energy from this emitter.
EnergyEmissionSampleOutput::getEmittedRay()
and probe
)EEmitterFeatureSet::EmissionSample
Implements ph::Emitter.
|
overridevirtual |
Evaluate emitted energy from a point on the surface.
Xe | The point that emits energy. |
Implements ph::Emitter.
|
overridevirtual |
Sample direct lighting for a target position.
DirectEnergySampleOutput::getObservationRay()
and probe
)EEmitterFeatureSet::DirectSample
Implements ph::Emitter.
|
inline |
void ph::OmniModulatedEmitter::setFilter | ( | const std::shared_ptr< TTexture< math::Spectrum > > & | filter | ) |