37 #ifndef RixBuiltinShading_h 38 #define RixBuiltinShading_h 118 bool isLightPath =
false,
120 bool isPrimary =
false) = 0;
186 bool isLightPath =
false,
188 bool isPrimary =
false) = 0;
221 float* reversePdfs) = 0;
233 float* reversePdfs) = 0;
#define US_NULL
Definition: RiTypesHelper.h:683
All-inlined interface for generating sample points for use by Monte Carlo integration and multiple-im...
Definition: RixRNG.h:59
RixSCDetail dmfpDetail
Definition: RixShadingBuiltin.h:153
Definition: RixBxdf.h:264
RixShadingContext is analogous to a RenderMan grid - it is a group of 1 or more points that may be sh...
Definition: RixShading.h:663
RixSCDetail color2Detail
Definition: RixShadingBuiltin.h:88
int const _version
Definition: RixShadingBuiltin.h:147
RtVector3 const * bumpNormal
Definition: RixShadingBuiltin.h:168
float const * weight1
Definition: RixShadingBuiltin.h:89
Params()
Definition: RixShadingBuiltin.h:65
float internalReflectionsEta
Definition: RixShadingBuiltin.h:165
RtUString subset
Definition: RixShadingBuiltin.h:163
RixBXEvaluateDomain
The RixBxdf interface is a shading plugin responsible for creating a RixBxdf from the the ShadingCont...
Definition: RixBxdf.h:121
pxrcore::ColorRGB RtColorRGB
Definition: RiTypesHelper.h:520
RixSCDetail dmfp3Detail
Definition: RixShadingBuiltin.h:92
float followTopology
Definition: RixShadingBuiltin.h:100
RixSCDetail weight1Detail
Definition: RixShadingBuiltin.h:90
RtColorRGB const * color1
Definition: RixShadingBuiltin.h:87
virtual void GetNearestHits(int nRays, RtRayGeometry const *rays, RixRNG *rng, RixBXLobeTraits const &lobesWanted, RixIntegratorContext &iCtx, RixLightingServices *lightingServices, IntegratorDelegate *lcb, int *numShadingCtxs, RixShadingContext const **shadingCtxs, RtUString const subset=US_NULL, RtUString const excludeSubset=US_NULL, bool isLightPath=false, RtHitSides hitSides=k_SidesBoth, bool isPrimary=false)=0
RtColorRGB const * dmfp
Definition: RixShadingBuiltin.h:152
Params()
Definition: RixShadingBuiltin.h:140
int disableAlbedoInversion
Definition: RixShadingBuiltin.h:162
RtColorRGB const * dmfp
Definition: RixShadingBuiltin.h:81
float const * dmfp2
Definition: RixShadingBuiltin.h:91
virtual void GenerateSample(RixBXTransportTrait transportTrait, RixBXLobeTraits const *lobesWanted, RixRNG *rng, RixBXLobeSampled *lobeSampled, RtVector3 *directions, RixBXLobeWeights &weights, float *forwardPdfs, float *reversePdfs, RtColorRGB *compTrans=NULL)=0
Bxdf is expected to generate a sample direction and lobe weights for each point in the ShadingContext...
RixSCDetail weight3Detail
Definition: RixShadingBuiltin.h:90
RixSCDetail mfpDetail
Definition: RixShadingBuiltin.h:84
Definition: RixIntegrator.h:615
RixSCDetail
RixSCDetail enumerates the valid sizing qualifiers for SC parameters.
Definition: RixShading.h:432
char _reserved[32]
Definition: RixShadingBuiltin.h:104
Definition: RixShadingBuiltin.h:128
virtual void EvaluateSamplesAtIndex(RixBXTransportTrait transportTrait, RixBXLobeTraits const &lobesWanted, RixRNG *rng, int index, int nSamples, RixBXLobeTraits *lobesEvaluated, RtVector3 const *directions, RixBXLobeWeights &weights, float *forwardPdfs, float *reversePdfs)=0
float const * weight3
Definition: RixShadingBuiltin.h:89
float const * dmfp1
Definition: RixShadingBuiltin.h:91
This struct represents the characteristics of just one lobe of a bxdf.
Definition: RixBxdfLobe.h:63
RtColorRGB const * mfp
Definition: RixShadingBuiltin.h:83
RtVector3 const * bumpNormal
Definition: RixShadingBuiltin.h:96
Definition: RixBxdfLobe.h:428
Definition: RixIntegrator.h:234
RtHitSides
Definition: RixShading.h:99
RixSCDetail albedoDetail
Definition: RixShadingBuiltin.h:151
RixSCDetail albedoDetail
Definition: RixShadingBuiltin.h:80
virtual ~RixSSPathTraced()
for internal use only.
Definition: RixShadingBuiltin.h:192
virtual RixBXEvaluateDomain GetEvaluateDomain()=0
Definition: RixBxdf.h:769
int continuationRays
Definition: RixShadingBuiltin.h:98
RixSCDetail dmfp1Detail
Definition: RixShadingBuiltin.h:92
Definition: RixShadingBuiltin.h:53
RixSSPathTraced(RixShadingContext const *sCtx, RixBxdfFactory *f, void *_instanceData)
Definition: RixShadingBuiltin.h:131
virtual void EvaluateSample(RixBXTransportTrait transportTrait, RixBXLobeTraits const *lobesWanted, RixRNG *rng, RixBXLobeTraits *lobesEvaluated, RtVector3 const *directions, RixBXLobeWeights &weights, float *forwardPdfs, float *reversePdfs)=0
Bxdf is expected to evaluate itself subject to the lobesWanted request.
float const * ior
Definition: RixShadingBuiltin.h:154
Definition: RixShadingBuiltin.h:63
RtColorRGB const * albedo
Definition: RixShadingBuiltin.h:150
bool resolveSelfIntersections
Definition: RixShadingBuiltin.h:164
RixBXTransportTrait
Definition: RixBxdf.h:248
RixSCDetail color3Detail
Definition: RixShadingBuiltin.h:88
PRMAN_INLINE RixBXLobeTraits GetAllLobeTraits()
Definition: RixBxdf.h:545
float const * g
Definition: RixShadingBuiltin.h:156
float const * dmfp3
Definition: RixShadingBuiltin.h:91
float unitLength
Definition: RixShadingBuiltin.h:166
float diffuseSwitch
Definition: RixShadingBuiltin.h:160
Definition: RixShadingBuiltin.h:195
Usage
Definition: RixLighting.h:142
virtual void GetNearestHits(int nRays, RtRayGeometry const *rays, RixRNG *rng, RixBXLobeTraits const &lobesWanted, RixIntegratorContext &iCtx, RixLightingServices *lightingServices, IntegratorDelegate *lcb, int *numShadingCtxs, RixShadingContext const **shadingCtxs, RtUString const subset=US_NULL, RtUString const excludeSubset=US_NULL, bool isLightPath=false, RtHitSides hitSides=k_SidesBoth, bool isPrimary=false)=0
virtual ~RixSSDiffusion()
for internal use only.
Definition: RixShadingBuiltin.h:124
int const _version
Definition: RixShadingBuiltin.h:75
Definition: RixBxdf.h:842
RixSCDetail iorDetail
Definition: RixShadingBuiltin.h:155
char _reserved[32]
Definition: RixShadingBuiltin.h:172
Definition: RixShadingBuiltin.h:138
RixSCDetail dmfpDetail
Definition: RixShadingBuiltin.h:82
RixSSDiffusion(RixShadingContext const *sCtx, RixBxdfFactory *f, void *_instanceData)
Definition: RixShadingBuiltin.h:56
This struct represents the characteristics of potentially several lobes of a bxdf in aggregate...
Definition: RixBxdfLobe.h:178
RixSCDetail gDetail
Definition: RixShadingBuiltin.h:157
pxrcore::UString RtUString
Definition: RiTypesHelper.h:682
float const * weight2
Definition: RixShadingBuiltin.h:89
float bias
Definition: RixShadingBuiltin.h:161
RtColorRGB const * albedo
Definition: RixShadingBuiltin.h:79
RixSCDetail dmfp2Detail
Definition: RixShadingBuiltin.h:92
RtFloat3 RtVector3
Definition: RiTypesHelper.h:72
Definition: RixShading.h:103
RixSCDetail color1Detail
Definition: RixShadingBuiltin.h:88
float unitLength
Definition: RixShadingBuiltin.h:94
virtual int GetNumLobes()=0
RtColorRGB const * color3
Definition: RixShadingBuiltin.h:87
RtColorRGB const * color2
Definition: RixShadingBuiltin.h:87
RixSCDetail weight2Detail
Definition: RixShadingBuiltin.h:90
Definition: RixBxdf.h:518