#include <emitter.h>
|
virtual void | SamplePosition (const Math::Vec2 &sample, SurfaceGeometry &geom, Math::PDFEval &pdf) const =0 |
|
virtual Math::Vec3 | EvaluatePosition (const SurfaceGeometry &geom) const =0 |
|
virtual Math::PDFEval | EvaluatePositionPDF (const SurfaceGeometry &geom) const =0 |
|
virtual void | RegisterPrimitives (const std::vector< Primitive * > &primitives)=0 |
|
virtual void | PostConfigure (const Scene &scene)=0 |
|
virtual EmitterShape * | CreateEmitterShape () const =0 |
|
virtual AABB | GetAABB () const =0 |
|
virtual bool | SampleDirection (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleResult &result) const =0 |
|
virtual Math::Vec3 | SampleAndEstimateDirection (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleResult &result) const =0 |
|
virtual bool | SampleAndEstimateDirectionBidir (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleBidirResult &result) const =0 |
|
virtual Math::Vec3 | EvaluateDirection (const GeneralizedBSDFEvaluateQuery &query, const SurfaceGeometry &geom) const =0 |
|
virtual Math::PDFEval | EvaluateDirectionPDF (const GeneralizedBSDFEvaluateQuery &query, const SurfaceGeometry &geom) const =0 |
|
virtual int | BSDFTypes () const =0 |
|
virtual bool | Load (const ConfigNode &node, const Assets &assets)=0 |
|
LM_PUBLIC_API std::string | ID () const |
|
LM_HIDDEN_API void | SetID (const std::string &id) |
|
virtual std::string | ComponentInterfaceTypeName () const =0 |
|
virtual std::string | ComponentImplTypeName () const =0 |
|
void * | operator new (std::size_t size) throw (std::bad_alloc) |
|
void | operator delete (void *p) |
|
Emitter. The base class of Light and Camera.
Get associated emitter shapes. Some emitter is associated with intersectable shapes (e.g., sphere for environment lights) in order to integrate emitters with BPT based rendering techniques. Ownership of the created instance is delegated to the caller.
- Returns
- Instance of emitter shape.
Implemented in AreaLight, PerspectiveCamera, and ConstantEnvironmentLight.
virtual Math::Vec3 Emitter::EvaluatePosition |
( |
const SurfaceGeometry & |
geom | ) |
const |
|
pure virtual |
virtual Math::PDFEval Emitter::EvaluatePositionPDF |
( |
const SurfaceGeometry & |
geom | ) |
const |
|
pure virtual |
virtual void Emitter::PostConfigure |
( |
const Scene & |
scene | ) |
|
|
pure virtual |
virtual void Emitter::RegisterPrimitives |
( |
const std::vector< Primitive * > & |
primitives | ) |
|
|
pure virtual |
Register an reference to the primitive. Some implementation of camera needs transformed mesh information for sampling. The function registers the reference to the primitive. The function is internally called.
- Parameters
-
primitives | An list instances of the primitive. |
Implemented in AreaLight, PerspectiveCamera, ThinLensCamera, and ConstantEnvironmentLight.
virtual void Emitter::SamplePosition |
( |
const Math::Vec2 & |
sample, |
|
|
SurfaceGeometry & |
geom, |
|
|
Math::PDFEval & |
pdf |
|
) |
| const |
|
pure virtual |
The documentation for this class was generated from the following file:
- /home/travis/build/hi2p-perim/lightmetrica/include/lightmetrica/emitter.h