Public Member Functions | |
Independent (const PropertyList &propList) | |
std::unique_ptr< Sampler > | clone () const |
Create an exact clone of the current instance. | |
void | prepare (const ImageBlock &block) |
Prepare to render a new image block. More... | |
void | generate () |
Prepare to generate new samples. More... | |
void | advance () |
Advance to the next sample. | |
float | next1D () |
Retrieve the next component value from the current sample. | |
Point2f | next2D () |
Retrieve the next two component values from the current sample. | |
virtual std::string | toString () const override |
Return a brief string summary of the instance (for debugging purposes) | |
Public Member Functions inherited from Sampler | |
virtual | ~Sampler () |
Release all memory. | |
virtual size_t | getSampleCount () const |
Return the number of configured pixel samples. | |
virtual EClassType | getClassType () const override |
Return the type of object (i.e. Mesh/Sampler/etc.) provided by this instance. | |
Public Member Functions inherited from NoriObject | |
virtual | ~NoriObject () |
Virtual destructor. | |
virtual void | addChild (NoriObject *child) |
Add a child object to the current instance. More... | |
virtual void | setParent (NoriObject *parent) |
Set the parent object. More... | |
virtual void | activate () |
Perform some action associated with the 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 Sampler | |
size_t | m_sampleCount |
Protected Attributes inherited from NoriObject | |
std::string | m_idname |
Independent sampling - returns independent uniformly distributed random numbers on [0, 1)x[0, 1)
.
This class is essentially just a wrapper around the pcg32 pseudorandom number generator. For more details on what sample generators do in general, refer to the Sampler class.
Definition at line 33 of file independent.cpp.
|
inlinevirtual |
Prepare to generate new samples.
This function is called initially and every time the integrator starts rendering a new pixel.
Implements Sampler.
Definition at line 55 of file independent.cpp.
|
inlinevirtual |
Prepare to render a new image block.
This function is called when the sampler begins rendering a new image block. This can be used to deterministically initialize the sampler so that repeated program runs always create the same image.
Implements Sampler.
Definition at line 48 of file independent.cpp.