RenderMan API
23.0
|
#include <RixIntegrator.h>
Public Types | |
enum | SamplingModes { k_Invalid = 0, k_Fixed = 1, k_Adaptive = 2, k_Incremental = 4, k_AllModes = (k_Fixed | k_Adaptive | k_Incremental) } |
Indicates the sampling modes supported by the integrator. More... | |
enum | LightingModes { k_UnidirectionalLighting = 0, k_BidirectionalLighting = 1 } |
Indicates the lighting modes supported by the integrator. More... | |
Public Member Functions | |
RixIntegratorEnvironment () | |
PRMAN_INLINE RixDisplayChannel const * | GetDisplayChannel (RtUString name) const |
Public Attributes | |
int | m_version |
Interface version. More... | |
int | maxIntegrateSize |
int | maxShadingCtxSize |
SamplingModes | supportedSamplingModes |
Deprecated. More... | |
LightingModes | lightingRequirements |
Deprecated. More... | |
int const | numDisplays |
Display state (unmutable). More... | |
RixDisplayChannel const *const | displays |
bool | wantsEmptyIntegrate |
bool | wantsIncrementBarrier |
int const | numRaysPerIncrement |
int const | numIncrements |
Total number of increments. This is usually maxsamples . More... | |
int | numBootstrapIncrements |
Used to request iterations which do not contribute to the final result. More... | |
RixBXLobeTraits | lobesWanted |
float | cameraMediumIOR |
int | cameraMediumPriority |
Priority of the medium surrounding the camera. Defaults to 0. More... | |
bool | wantsTransmission |
Expresses whether integrator has a non trivial GetTransmission() method. More... | |
bool | usesLightingServices |
char | _reserved [30] |
This class allows integrators to instrospect the rendering environment. An object of this type is also provided to RixIntegrator::RenderBegin()
, allowing the integrators to communicate some requirements back to the renderer.
Definition at line 468 of file RixIntegrator.h.
Indicates the lighting modes supported by the integrator.
Enumerator | |
---|---|
k_UnidirectionalLighting | |
k_BidirectionalLighting |
Definition at line 483 of file RixIntegrator.h.
Indicates the sampling modes supported by the integrator.
Enumerator | |
---|---|
k_Invalid | |
k_Fixed | |
k_Adaptive | |
k_Incremental | |
k_AllModes |
Definition at line 472 of file RixIntegrator.h.
|
inline |
Definition at line 489 of file RixIntegrator.h.
|
inline |
Returns the first display channel with the corresponding name. NOTE: This is probably not what you want to use for RixDisplayFilter
plugins – see the comment on RixDisplayChannel
above, regarding the multiplicity of some channel ids.
[in] | name | Channel name. |
Definition at line 518 of file RixIntegrator.h.
char RixIntegratorEnvironment::_reserved[30] |
Definition at line 584 of file RixIntegrator.h.
float RixIntegratorEnvironment::cameraMediumIOR |
If the camera is inside a non-trivial participating medium, this is the IOR of the medium. Defaults to 1.0f (air).
Definition at line 575 of file RixIntegrator.h.
int RixIntegratorEnvironment::cameraMediumPriority |
Priority of the medium surrounding the camera. Defaults to 0.
Definition at line 577 of file RixIntegrator.h.
RixDisplayChannel const* const RixIntegratorEnvironment::displays |
Definition at line 548 of file RixIntegrator.h.
LightingModes RixIntegratorEnvironment::lightingRequirements |
Deprecated.
Definition at line 544 of file RixIntegrator.h.
RixBXLobeTraits RixIntegratorEnvironment::lobesWanted |
Camera state.
Used to establish state for the first "wavefront". Other calls to GetNearestHit()
are parameterized as integrator chooses.
Definition at line 572 of file RixIntegrator.h.
int RixIntegratorEnvironment::m_version |
Interface version.
Definition at line 526 of file RixIntegrator.h.
int RixIntegratorEnvironment::maxIntegrateSize |
Integration state
The maximum number of rays used for a 'bucket'. This is the maximum number of rays given to RixIntegrator::IntegrateRays()
, or the maximum total number of points encapsulated in the shading contexts given to RixIntegrator::Integrate()
.
Definition at line 536 of file RixIntegrator.h.
int RixIntegratorEnvironment::maxShadingCtxSize |
The maximum number of points that a shading context will encapsulate. This affect all the shading contexts provided to the integrator by the renderer, including the ones returned by the various GetNearestHits()
and GetTransmission()
methods.
Definition at line 540 of file RixIntegrator.h.
int RixIntegratorEnvironment::numBootstrapIncrements |
Used to request iterations which do not contribute to the final result.
Definition at line 566 of file RixIntegrator.h.
int const RixIntegratorEnvironment::numDisplays |
Display state (unmutable).
Definition at line 547 of file RixIntegrator.h.
int const RixIntegratorEnvironment::numIncrements |
Total number of increments. This is usually maxsamples
.
Definition at line 563 of file RixIntegrator.h.
int const RixIntegratorEnvironment::numRaysPerIncrement |
(unmutable). Total number of rays used per increment. This depends on the render resolution.
Definition at line 561 of file RixIntegrator.h.
SamplingModes RixIntegratorEnvironment::supportedSamplingModes |
Deprecated.
Definition at line 542 of file RixIntegrator.h.
bool RixIntegratorEnvironment::usesLightingServices |
Indicates if the integrator will make use of RixLightingServices
. If they are not used, some initialization in the renderer may be skipped. Defaults to true.
Definition at line 583 of file RixIntegrator.h.
bool RixIntegratorEnvironment::wantsEmptyIntegrate |
Increment state.
Expresses whether integrator requires empty integrate request in adaptive rendering modes.
Definition at line 553 of file RixIntegrator.h.
bool RixIntegratorEnvironment::wantsIncrementBarrier |
Expresses whether integrator requires all threads to synchronize on each rendering increment. This can impact performance; choose carefully whether this is really needed. See k_RixSCIncrementBarrier
.
Definition at line 557 of file RixIntegrator.h.
bool RixIntegratorEnvironment::wantsTransmission |
Expresses whether integrator has a non trivial GetTransmission()
method.
Definition at line 579 of file RixIntegrator.h.