![]() |
RenderMan
26.0
|
#include <algorithm>#include <cassert>#include <cmath>#include <cstddef>#include "RixInterfaces.h"#include "RixShading.h"#include "prmanapi.h"#include "RiTypesHelper.h"#include "RixPredefinedStrings.hpp"#include <alloca.h>Go to the source code of this file.
Namespaces | |
| RixConstants | |
Constant Groups | |
| RixConstants | |
Macros | |
| #define | F_PI (3.14159265f) |
| #define | F_TWOPI (6.283185307f) |
| #define | F_FOURPI (12.56637061f) |
| #define | F_INVPI (0.318309886f) |
| #define | F_INVPISQ (0.1013211836f) |
| #define | F_INVTWOPI (0.15915494309f) |
| #define | F_INVFOURPI (0.0795774715f) |
| #define | F_PIDIV2 (1.57079632679f) |
| #define | F_PIDIV4 (0.785398163397f) |
| #define | F_DEGTORAD (0.017453292520f) |
| #define | F_RADTODEG (57.2957795131f) |
| #define | F_INVLN2 (1.44269504089f) |
| #define | F_INVLN4 (0.72134752f) |
| #define | F_LOG2E (1.44269504088896f) |
| #define | F_SQRT2 (1.41421356237f) |
| #define | F_MAXDIST (1.0e10f) |
| #define | F_SQRTMIN (1.0842021721e-19f) |
| #define | F_MINDIVISOR (1.0e-6f) |
| #define | ALMOSTZERO 0.005f |
| #define | RixAlloca(s) alloca(s) |
Functions | |
| PRMAN_INLINE unsigned int | RixFindFirstSetBit (unsigned long long v) |
| PRMAN_INLINE float | RixDegreesToRadians (float degrees) |
| PRMAN_INLINE float | RixRadiansToDegrees (float rads) |
| template<typename T > | |
| PRMAN_INLINE T | RixSignum (T x) |
| PRMAN_INLINE int | RixIsFinite (float x) |
| PRMAN_INLINE int | RixIsFinite (RtFloat3 const &v) |
| PRMAN_INLINE float | RixMin (float x, float y) |
| PRMAN_INLINE int | RixMin (int x, int y) |
| PRMAN_INLINE float | RixMax (float x, float y) |
| PRMAN_INLINE int | RixMax (int x, int y) |
| PRMAN_INLINE float | RixClamp (float x, float min, float max) |
| PRMAN_INLINE int | RixClamp (int x, int min, int max) |
| PRMAN_INLINE float | RixFractional (float x) |
| PRMAN_INLINE float | RixMod (float x, float y) |
| PRMAN_INLINE void | RixFresnelDielectric (float VdN, float eta, float *Kr) |
| PRMAN_INLINE void | RixFresnelDielectric (const RtVector3 &Vn, const RtNormal3 &Nn, float eta, float *Kr, RtVector3 *Rn=NULL, RtVector3 *Tn=NULL) |
| PRMAN_INLINE void | RixFresnelDielectric (RixShadingContext &sCtx, float eta, float *Kr, float *Kt, RtVector3 *R, RtVector3 *T) |
| PRMAN_INLINE void | RixFresnelConductorApprox (float VdN, float eta, float kappa, float *Kr) |
| PRMAN_INLINE void | RixFresnelConductor (float VdN, float eta, float kappa, float *Kr) |
| PRMAN_INLINE void | RixFresnelConductor (const RtVector3 &Vn, const RtNormal3 &Nn, float eta, float kappa, float *Kr, RtVector3 *Rn=NULL) |
| PRMAN_INLINE void | RixFresnelConductor (float VdN, RtColorRGB const &eta, RtColorRGB const &kappa, RtColorRGB *Kr) |
| PRMAN_INLINE void | RixFresnelConductor (RtVector3 const &Vn, RtNormal3 const &Nn, RtColorRGB const &eta, RtColorRGB const &kappa, RtColorRGB *Kr, RtVector3 *Rn=NULL) |
| PRMAN_INLINE float | RixSchlickFresnelWeight (float NdV) |
| PRMAN_INLINE RtVector3 | RixReflect (const RtVector3 &Vn, const RtNormal3 &Nn) |
| PRMAN_INLINE RtVector3 | RixReflect (RtVector3 const &Vn, RtVector3 const &Nn, float VdN) |
| PRMAN_INLINE int | RixRefract (const RtVector3 &Vn, const RtNormal3 &Nn, float eta, RtVector3 &Tn) |
| PRMAN_INLINE RtNormal3 | RixGetForwardFacingNormal (RtVector3 const &Vn, RtNormal3 const &Nn, float *VdotNf=NULL) |
| PRMAN_INLINE RtNormal3 | RixGetBackwardFacingNormal (RtVector3 const &Vn, RtNormal3 const &Nn, float *VdotNb=NULL) |
| PRMAN_INLINE void | RixCosDirectionalDistribution (const RtFloat2 &xi, const RtVector3 &n, const RtVector3 &t0, const RtVector3 &t1, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE void | RixCosDirectionalDistribution (const RtFloat2 &xi, const RtVector3 &n, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE void | RixUniformDirectionalDistribution (const RtFloat2 &xi, const RtVector3 &n, const RtVector3 &t0, const RtVector3 &t1, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE void | RixUniformDirectionalDistribution (const RtFloat2 &xi, const RtVector3 &n, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE void | RixUniformConeDistribution (const RtFloat2 &xi, const float coneAngle, const RtVector3 &n, const RtVector3 &t0, const RtVector3 &t1, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE void | RixUniformConeDistribution (const RtFloat2 &xi, const float coneAngle, const RtVector3 &n, RtVector3 &outDir, float &cosTheta) |
| PRMAN_INLINE RtVector3 | RixSphericalDistribution (const RtFloat2 &xi) |
| PRMAN_INLINE int | RixChooseAndRemap (float &xi, int numThresholds, float *thresholds) |
| PRMAN_INLINE float | RixTraceBias (const RtPoint3 &, const RtNormal3 &N, const RtVector3 &dir, float biasR, float biasT) |
| PRMAN_INLINE RtPoint3 | RixApplyTraceBias (const RtPoint3 &org, const RtNormal3 &N, const RtVector3 &dir, const float biasR, const float biasT) |
| PRMAN_INLINE void | RixSinCos (float phi, float *sinPhi, float *cosPhi) |
| PRMAN_INLINE RtVector3 | RixSphericalDirection (float sinTheta, float cosTheta, float sinPhi, float cosPhi) |
| PRMAN_INLINE RtVector3 | RixSphericalDirection (float sinTheta, float cosTheta, float phi) |
| PRMAN_INLINE RtVector3 | RixChangeBasisFrom (RtVector3 const &in, RtVector3 const &X, RtVector3 const &Y, RtVector3 const &Z) |
| PRMAN_INLINE RtVector3 | RixChangeBasis (RtVector3 const &in, RtVector3 const &X, RtVector3 const &Y, RtVector3 const &Z) |
| PRMAN_INLINE RtVector3 | RixChangeBasisTo (RtVector3 const &in, RtVector3 const &X, RtVector3 const &Y, RtVector3 const &Z) |
| template<typename T > | |
| PRMAN_INLINE T | RixMix (const T &v0, const T &v1, float m) |
| template<typename T > | |
| PRMAN_INLINE T | RixSmoothMix (const T &x1, const T &x2, float t) |
| template<typename T > | |
| PRMAN_INLINE T | RixEaseInMix (const T &x1, const T &x2, float t) |
| template<typename T > | |
| PRMAN_INLINE T | RixEaseOutMix (const T &x1, const T &x2, float t) |
| PRMAN_INLINE float | RixBoxStep (float min, float val) |
| PRMAN_INLINE float | RixLinearStep (float min, float max, float val) |
| PRMAN_INLINE float | RixSmoothStep (float min, float max, float val) |
| PRMAN_INLINE float | RixGaussStep (float min, float max, float val) |
| PRMAN_INLINE float | RixSolidAngle2Spread (float solidangle) |
| PRMAN_INLINE void | RixComputeShadingBasis (RtNormal3 const &Nf, RtVector3 const &Tn, RtVector3 &TX, RtVector3 &TY) |
| PRMAN_INLINE void | RixDebugBasis (RixShadingContext *sc, RtPoint3 &o, RtVector3 &x, RtVector3 &y, RtVector3 &z) |
| PRMAN_INLINE void | RixShiftCtxInU (RixShadingContext *sCtx) |
| PRMAN_INLINE void | RixShiftCtxInV (RixShadingContext *sCtx) |
| PRMAN_INLINE void | RixBump (RixShadingContext const *sCtx, float const *disp, float const *dispU, float const *dispV, RtNormal3 *Nn) |
| PRMAN_INLINE int | RixIsMatte (RixShadingContext const &sCtx) |
| PRMAN_INLINE int | RixIsHoldout (RixShadingContext const &sCtx) |
| PRMAN_INLINE unsigned long | RixImod (const unsigned long a, const unsigned long b) |
| PRMAN_INLINE float | RixHash (const char *bufPtr, unsigned long range=65535) |
| PRMAN_INLINE RtColorRGB | RixLerpRGB (RtColorRGB const &a, RtColorRGB const &b, float const mix) |
| PRMAN_INLINE void | RixAdjustNormal (float const amount, RtVector3 const &Vn, RtVector3 const &Ngn, RtNormal3 &Nn) |
| PRMAN_INLINE RtFloat | RixBumpShadowingFactor (RtNormal3 shadingNormal, RtNormal3 bumpNormal, RtVector3 Ln) |
| PRMAN_INLINE RtFloat | RixProcPrimInstanceHash (RixRenderState *rstate) |
| PRMAN_INLINE float | RixRayCurvatureToRoughnessSq (float multiplier, float curvature, float incidentRayRadius, float incidentRaySpread) |
| PRMAN_INLINE float | RixMollifyRoughness (float roughness, float rayCurvatureRoughnessSq) |
| #define ALMOSTZERO 0.005f |
Referenced by RixCosDirectionalDistribution().
| #define F_DEGTORAD (0.017453292520f) |
Referenced by RixDegreesToRadians().
| #define F_FOURPI (12.56637061f) |
| #define F_INVFOURPI (0.0795774715f) |
| #define F_INVLN2 (1.44269504089f) |
| #define F_INVLN4 (0.72134752f) |
| #define F_INVPI (0.318309886f) |
| #define F_INVPISQ (0.1013211836f) |
| #define F_INVTWOPI (0.15915494309f) |
| #define F_LOG2E (1.44269504088896f) |
| #define F_MAXDIST (1.0e10f) |
| #define F_MINDIVISOR (1.0e-6f) |
| #define F_PI (3.14159265f) |
Referenced by RixIES::EvaluateIESProfile(), and RixIES::ReadIESProfile().
| #define F_PIDIV2 (1.57079632679f) |
| #define F_PIDIV4 (0.785398163397f) |
| #define F_RADTODEG (57.2957795131f) |
Referenced by RixRadiansToDegrees().
| #define F_SQRT2 (1.41421356237f) |
| #define F_SQRTMIN (1.0842021721e-19f) |
| #define F_TWOPI (6.283185307f) |
| #define RixAlloca | ( | s) | alloca(s) |
| PRMAN_INLINE void RixAdjustNormal | ( | float const | amount, |
| RtVector3 const & | Vn, | ||
| RtVector3 const & | Ngn, | ||
| RtNormal3 & | Nn | ||
| ) |
| PRMAN_INLINE RtPoint3 RixApplyTraceBias | ( | const RtPoint3 & | org, |
| const RtNormal3 & | N, | ||
| const RtVector3 & | dir, | ||
| const float | biasR, | ||
| const float | biasT | ||
| ) |
References RixTraceBias().
| PRMAN_INLINE float RixBoxStep | ( | float | min, |
| float | val | ||
| ) |
Referenced by RixGaussStep(), RixLinearStep(), and RixSmoothStep().
| PRMAN_INLINE void RixBump | ( | RixShadingContext const * | sCtx, |
| float const * | disp, | ||
| float const * | dispU, | ||
| float const * | dispV, | ||
| RtNormal3 * | Nn | ||
| ) |
References RixShadingContext::GetBuiltinVar(), RixShadingContext::GetPrimVar(), RixShadingContext::k_dPdu, RixShadingContext::k_dPdv, RixShadingContext::k_du, RixShadingContext::k_dv, RixShadingContext::k_Naon, RixShadingContext::k_Ngn, RixShadingContext::k_Nn, k_RixSCInvalidDetail, and RixShadingContext::numPts.
| PRMAN_INLINE RtFloat RixBumpShadowingFactor | ( | RtNormal3 | shadingNormal, |
| RtNormal3 | bumpNormal, | ||
| RtVector3 | Ln | ||
| ) |
References RixClamp(), RixMax(), and RixMin().
| PRMAN_INLINE RtVector3 RixChangeBasis | ( | RtVector3 const & | in, |
| RtVector3 const & | X, | ||
| RtVector3 const & | Y, | ||
| RtVector3 const & | Z | ||
| ) |
References RixChangeBasisFrom().
| PRMAN_INLINE RtVector3 RixChangeBasisFrom | ( | RtVector3 const & | in, |
| RtVector3 const & | X, | ||
| RtVector3 const & | Y, | ||
| RtVector3 const & | Z | ||
| ) |
Referenced by RixChangeBasis().
| PRMAN_INLINE RtVector3 RixChangeBasisTo | ( | RtVector3 const & | in, |
| RtVector3 const & | X, | ||
| RtVector3 const & | Y, | ||
| RtVector3 const & | Z | ||
| ) |
| PRMAN_INLINE int RixChooseAndRemap | ( | float & | xi, |
| int | numThresholds, | ||
| float * | thresholds | ||
| ) |
| PRMAN_INLINE float RixClamp | ( | float | x, |
| float | min, | ||
| float | max | ||
| ) |
Referenced by RixBumpShadowingFactor(), RixColorClamp(), RixContrast(), RixHslCorrect(), RixHsvCorrect(), and RixLerpRGB().
| PRMAN_INLINE int RixClamp | ( | int | x, |
| int | min, | ||
| int | max | ||
| ) |
| PRMAN_INLINE void RixComputeShadingBasis | ( | RtNormal3 const & | Nf, |
| RtVector3 const & | Tn, | ||
| RtVector3 & | TX, | ||
| RtVector3 & | TY | ||
| ) |
| PRMAN_INLINE void RixCosDirectionalDistribution | ( | const RtFloat2 & | xi, |
| const RtVector3 & | n, | ||
| const RtVector3 & | t0, | ||
| const RtVector3 & | t1, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References ALMOSTZERO, and F_TWOPI.
Referenced by RixCosDirectionalDistribution().
| PRMAN_INLINE void RixCosDirectionalDistribution | ( | const RtFloat2 & | xi, |
| const RtVector3 & | n, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References RixCosDirectionalDistribution().
| PRMAN_INLINE void RixDebugBasis | ( | RixShadingContext * | sc, |
| RtPoint3 & | o, | ||
| RtVector3 & | x, | ||
| RtVector3 & | y, | ||
| RtVector3 & | z | ||
| ) |
References RixGeoDebugger::EmitPointNormal(), RixContext::GetRixInterface(), and k_RixGeoDebugger.
| PRMAN_INLINE float RixDegreesToRadians | ( | float | degrees) |
References F_DEGTORAD.
| PRMAN_INLINE T RixEaseInMix | ( | const T & | x1, |
| const T & | x2, | ||
| float | t | ||
| ) |
| PRMAN_INLINE T RixEaseOutMix | ( | const T & | x1, |
| const T & | x2, | ||
| float | t | ||
| ) |
| PRMAN_INLINE unsigned int RixFindFirstSetBit | ( | unsigned long long | v) |
| PRMAN_INLINE float RixFractional | ( | float | x) |
Referenced by RixHslCorrect(), and RixHsvCorrect().
| PRMAN_INLINE void RixFresnelConductor | ( | float | VdN, |
| float | eta, | ||
| float | kappa, | ||
| float * | Kr | ||
| ) |
References RixFresnelDielectric().
Referenced by RixFresnelConductor().
| PRMAN_INLINE void RixFresnelConductor | ( | const RtVector3 & | Vn, |
| const RtNormal3 & | Nn, | ||
| float | eta, | ||
| float | kappa, | ||
| float * | Kr, | ||
| RtVector3 * | Rn = NULL |
||
| ) |
References RixFresnelConductorApprox().
| PRMAN_INLINE void RixFresnelConductor | ( | float | VdN, |
| RtColorRGB const & | eta, | ||
| RtColorRGB const & | kappa, | ||
| RtColorRGB * | Kr | ||
| ) |
References RixFresnelConductorApprox().
| PRMAN_INLINE void RixFresnelConductor | ( | RtVector3 const & | Vn, |
| RtNormal3 const & | Nn, | ||
| RtColorRGB const & | eta, | ||
| RtColorRGB const & | kappa, | ||
| RtColorRGB * | Kr, | ||
| RtVector3 * | Rn = NULL |
||
| ) |
References RixFresnelConductor().
| PRMAN_INLINE void RixFresnelConductorApprox | ( | float | VdN, |
| float | eta, | ||
| float | kappa, | ||
| float * | Kr | ||
| ) |
References RixFresnelDielectric().
Referenced by RixFresnelConductor().
| PRMAN_INLINE void RixFresnelDielectric | ( | float | VdN, |
| float | eta, | ||
| float * | Kr | ||
| ) |
Referenced by RixFresnelConductor(), RixFresnelConductorApprox(), and RixFresnelDielectric().
| PRMAN_INLINE void RixFresnelDielectric | ( | const RtVector3 & | Vn, |
| const RtNormal3 & | Nn, | ||
| float | eta, | ||
| float * | Kr, | ||
| RtVector3 * | Rn = NULL, |
||
| RtVector3 * | Tn = NULL |
||
| ) |
| PRMAN_INLINE void RixFresnelDielectric | ( | RixShadingContext & | sCtx, |
| float | eta, | ||
| float * | Kr, | ||
| float * | Kt, | ||
| RtVector3 * | R, | ||
| RtVector3 * | T | ||
| ) |
| PRMAN_INLINE float RixGaussStep | ( | float | min, |
| float | max, | ||
| float | val | ||
| ) |
References RixBoxStep().
| PRMAN_INLINE RtNormal3 RixGetBackwardFacingNormal | ( | RtVector3 const & | Vn, |
| RtNormal3 const & | Nn, | ||
| float * | VdotNb = NULL |
||
| ) |
| PRMAN_INLINE RtNormal3 RixGetForwardFacingNormal | ( | RtVector3 const & | Vn, |
| RtNormal3 const & | Nn, | ||
| float * | VdotNf = NULL |
||
| ) |
| PRMAN_INLINE float RixHash | ( | const char * | bufPtr, |
| unsigned long | range = 65535 |
||
| ) |
References RixImod().
| PRMAN_INLINE unsigned long RixImod | ( | const unsigned long | a, |
| const unsigned long | b | ||
| ) |
Referenced by RixHash().
| PRMAN_INLINE int RixIsFinite | ( | float | x) |
Referenced by RixIsFinite(), and RtRayGeometry::SetRaySpread().
| PRMAN_INLINE int RixIsFinite | ( | RtFloat3 const & | v) |
References RixIsFinite().
| PRMAN_INLINE int RixIsHoldout | ( | RixShadingContext const & | sCtx) |
References RixContext::GetRixInterface(), and k_RixRenderState.
| PRMAN_INLINE int RixIsMatte | ( | RixShadingContext const & | sCtx) |
References RixContext::GetRixInterface(), and k_RixRenderState.
| PRMAN_INLINE RtColorRGB RixLerpRGB | ( | RtColorRGB const & | a, |
| RtColorRGB const & | b, | ||
| float const | mix | ||
| ) |
References RixClamp().
| PRMAN_INLINE float RixLinearStep | ( | float | min, |
| float | max, | ||
| float | val | ||
| ) |
References RixBoxStep().
| PRMAN_INLINE float RixMax | ( | float | x, |
| float | y | ||
| ) |
Referenced by RixBumpShadowingFactor(), RixGamma(), and RixSaturation().
| PRMAN_INLINE int RixMax | ( | int | x, |
| int | y | ||
| ) |
| PRMAN_INLINE float RixMin | ( | float | x, |
| float | y | ||
| ) |
Referenced by RixBumpShadowingFactor(), and RixContrast().
| PRMAN_INLINE int RixMin | ( | int | x, |
| int | y | ||
| ) |
| PRMAN_INLINE T RixMix | ( | const T & | v0, |
| const T & | v1, | ||
| float | m | ||
| ) |
| PRMAN_INLINE float RixMod | ( | float | x, |
| float | y | ||
| ) |
| PRMAN_INLINE float RixMollifyRoughness | ( | float | roughness, |
| float | rayCurvatureRoughnessSq | ||
| ) |
| PRMAN_INLINE RtFloat RixProcPrimInstanceHash | ( | RixRenderState * | rstate) |
References RixRenderState::GetAttribute().
| PRMAN_INLINE float RixRadiansToDegrees | ( | float | rads) |
References F_RADTODEG.
| PRMAN_INLINE float RixRayCurvatureToRoughnessSq | ( | float | multiplier, |
| float | curvature, | ||
| float | incidentRayRadius, | ||
| float | incidentRaySpread | ||
| ) |
| PRMAN_INLINE RtVector3 RixReflect | ( | const RtVector3 & | Vn, |
| const RtNormal3 & | Nn | ||
| ) |
| PRMAN_INLINE RtVector3 RixReflect | ( | RtVector3 const & | Vn, |
| RtVector3 const & | Nn, | ||
| float | VdN | ||
| ) |
| PRMAN_INLINE int RixRefract | ( | const RtVector3 & | Vn, |
| const RtNormal3 & | Nn, | ||
| float | eta, | ||
| RtVector3 & | Tn | ||
| ) |
| PRMAN_INLINE float RixSchlickFresnelWeight | ( | float | NdV) |
| PRMAN_INLINE void RixShiftCtxInU | ( | RixShadingContext * | sCtx) |
| PRMAN_INLINE void RixShiftCtxInV | ( | RixShadingContext * | sCtx) |
| PRMAN_INLINE T RixSignum | ( | T | x) |
| PRMAN_INLINE void RixSinCos | ( | float | phi, |
| float * | sinPhi, | ||
| float * | cosPhi | ||
| ) |
Referenced by RixSphericalDirection().
| PRMAN_INLINE T RixSmoothMix | ( | const T & | x1, |
| const T & | x2, | ||
| float | t | ||
| ) |
| PRMAN_INLINE float RixSmoothStep | ( | float | min, |
| float | max, | ||
| float | val | ||
| ) |
References RixBoxStep().
| PRMAN_INLINE float RixSolidAngle2Spread | ( | float | solidangle) |
| PRMAN_INLINE RtVector3 RixSphericalDirection | ( | float | sinTheta, |
| float | cosTheta, | ||
| float | sinPhi, | ||
| float | cosPhi | ||
| ) |
Referenced by RixSphericalDirection().
| PRMAN_INLINE RtVector3 RixSphericalDirection | ( | float | sinTheta, |
| float | cosTheta, | ||
| float | phi | ||
| ) |
References RixSinCos(), and RixSphericalDirection().
| PRMAN_INLINE RtVector3 RixSphericalDistribution | ( | const RtFloat2 & | xi) |
References F_TWOPI.
| PRMAN_INLINE float RixTraceBias | ( | const RtPoint3 & | , |
| const RtNormal3 & | N, | ||
| const RtVector3 & | dir, | ||
| float | biasR, | ||
| float | biasT | ||
| ) |
Referenced by RixApplyTraceBias().
| PRMAN_INLINE void RixUniformConeDistribution | ( | const RtFloat2 & | xi, |
| const float | coneAngle, | ||
| const RtVector3 & | n, | ||
| const RtVector3 & | t0, | ||
| const RtVector3 & | t1, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References F_TWOPI.
Referenced by RixUniformConeDistribution().
| PRMAN_INLINE void RixUniformConeDistribution | ( | const RtFloat2 & | xi, |
| const float | coneAngle, | ||
| const RtVector3 & | n, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References RixUniformConeDistribution().
| PRMAN_INLINE void RixUniformDirectionalDistribution | ( | const RtFloat2 & | xi, |
| const RtVector3 & | n, | ||
| const RtVector3 & | t0, | ||
| const RtVector3 & | t1, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References F_TWOPI.
Referenced by RixUniformDirectionalDistribution().
| PRMAN_INLINE void RixUniformDirectionalDistribution | ( | const RtFloat2 & | xi, |
| const RtVector3 & | n, | ||
| RtVector3 & | outDir, | ||
| float & | cosTheta | ||
| ) |
References RixUniformDirectionalDistribution().