Diffuse / Lambertian BRDF model. More...
Public Member Functions | |
Diffuse (const PropertyList &propList) | |
virtual void | addChild (NoriObject *obj) override |
Add texture for the albedo. | |
virtual void | activate () override |
Perform some action associated with the object. More... | |
virtual Color3f | eval (const BSDFQueryRecord &bRec) const override |
Evaluate the BRDF model. | |
virtual float | pdf (const BSDFQueryRecord &bRec) const override |
Compute the density of sample() wrt. solid angles. | |
virtual Color3f | sample (BSDFQueryRecord &bRec, const Point2f &sample) const override |
Draw a a sample from the BRDF model. | |
bool | isDiffuse () const |
Return whether or not this BRDF is diffuse. This is primarily used by photon mapping to decide whether or not to store photons on a surface. | |
virtual std::string | toString () const override |
Return a human-readable summary. | |
virtual EClassType | getClassType () const override |
Return the type of object (i.e. Mesh/BSDF/etc.) provided by this instance. | |
Public Member Functions inherited from NoriObject | |
virtual | ~NoriObject () |
Virtual destructor. | |
virtual void | setParent (NoriObject *parent) |
Set the parent object. More... | |
void | setIdName (const std::string &name) |
Allow to assign a name to the object. | |
const std::string & | getIdName () const |
Additional Inherited Members | |
Public Types inherited from NoriObject | |
enum | EClassType { EScene = 0 , EMesh , ETexture , EBSDF , EPhaseFunction , EEmitter , EMedium , ECamera , EIntegrator , ESampler , ETest , EReconstructionFilter , EClassTypeCount } |
Static Public Member Functions inherited from NoriObject | |
static std::string | classTypeName (EClassType type) |
Turn a class type into a human-readable string. | |
Protected Attributes inherited from NoriObject | |
std::string | m_idname |
Diffuse / Lambertian BRDF model.
Definition at line 29 of file diffuse.cpp.
|
inlineoverridevirtual |
Perform some action associated with the object.
The default implementation throws an exception. Certain objects may choose to override it, e.g. to implement initialization, testing, or rendering functionality.
This function is called by the XML parser once it has constructed an object and added all of its children using addChild().
Reimplemented from NoriObject.
Definition at line 62 of file diffuse.cpp.