#include <GT_GPUTrace.h>
|
| enum | PrimHandleType { PHT_GT,
PHT_GU
} |
| |
| enum | GT_TraceDirectionMode { GTDM_Forward,
GTDM_Backward,
GTDM_Both
} |
| |
| enum | DataType {
DT_Int = 0,
DT_Float,
DT_Vec2,
DT_Vec3,
DT_Vec4,
DT_NumDataType
} |
| |
| enum | BakingCalcTypes {
BCT_Ao,
BCT_Cv,
BCT_Cu_N,
BCT_Cu_P,
BCT_Th,
BCT_Eg,
BCT_Rn,
BakingCalcType_Num
} |
| |
| using | GT_GPUTracePtr = UT_UniquePtr< GT_GPUTrace > |
| |
|
| | GT_GPUTrace (const Factory &factory) |
| |
| virtual | ~GT_GPUTrace () |
| |
| const UT_StringHolder & | name () const |
| |
| const UT_StringHolder & | label () const |
| |
| virtual void | computeBaking (exint nrays, UT_Vector3 *org, UT_Vector3 *dir, const float *tfar, const BakingOptions &opts, bool trace_high_res, UT_Array< AttributeBakeRequest > &requests, const UT_StringHolder *bakemesh_tracesets, const UT_Vector3 *tanu=nullptr, const UT_Vector3 *tanv=nullptr, float *ao=nullptr, float *cavity=nullptr, float *curvature=nullptr, float *thickness=nullptr, float *edge=nullptr, UT_Vector3 *rn=nullptr) const =0 |
| |
|
| bool | init (const UT_Array< PrimitiveInfo > &prims, const BakingOptions &opts) |
| |
Definition at line 28 of file GT_GPUTrace.h.
| Enumerator |
|---|
| BCT_Ao |
|
| BCT_Cv |
|
| BCT_Cu_N |
|
| BCT_Cu_P |
|
| BCT_Th |
|
| BCT_Eg |
|
| BCT_Rn |
|
| BakingCalcType_Num |
|
Definition at line 245 of file GT_GPUTrace.h.
| Enumerator |
|---|
| DT_Int |
|
| DT_Float |
|
| DT_Vec2 |
|
| DT_Vec3 |
|
| DT_Vec4 |
|
| DT_NumDataType |
|
Definition at line 224 of file GT_GPUTrace.h.
| Enumerator |
|---|
| GTDM_Forward |
|
| GTDM_Backward |
|
| GTDM_Both |
|
Definition at line 92 of file GT_GPUTrace.h.
| GT_GPUTrace::GT_GPUTrace |
( |
const Factory & |
factory | ) |
|
|
inline |
| virtual GT_GPUTrace::~GT_GPUTrace |
( |
| ) |
|
|
inlinevirtual |
Allocate a tracer from a particular factory.
Allocate the best tracer for a given piece of geometry
| virtual void GT_GPUTrace::computeBaking |
( |
exint |
nrays, |
|
|
UT_Vector3 * |
org, |
|
|
UT_Vector3 * |
dir, |
|
|
const float * |
tfar, |
|
|
const BakingOptions & |
opts, |
|
|
bool |
trace_high_res, |
|
|
UT_Array< AttributeBakeRequest > & |
requests, |
|
|
const UT_StringHolder * |
bakemesh_tracesets, |
|
|
const UT_Vector3 * |
tanu = nullptr, |
|
|
const UT_Vector3 * |
tanv = nullptr, |
|
|
float * |
ao = nullptr, |
|
|
float * |
cavity = nullptr, |
|
|
float * |
curvature = nullptr, |
|
|
float * |
thickness = nullptr, |
|
|
float * |
edge = nullptr, |
|
|
UT_Vector3 * |
rn = nullptr |
|
) |
| const |
|
pure virtual |
Note the dir vectors must be normalized. If trace_high_res is true, High res mesh info are traced using rays with given org and dir, typically on the Low res mesh, and, if opts.myPixelSamples also is 1, the input org and dir are so modified by the results with dir being the surface normal. tanu and tanv are tangent vectors on Low res mesh that correspond to each pixel. They are used to jitter the org. Both vectors can be passed null if opts.myPixelSamples is 1.
| const TraceSet& GT_GPUTrace::getTheAllTraceset |
( |
| ) |
const |
|
protected |
| constexpr uint GT_GPUTrace::AO_SEED = 0x4c41e0cd |
|
static |
| constexpr uint GT_GPUTrace::CU_N_SEED = 0x4b65c61e |
|
static |
| constexpr uint GT_GPUTrace::CU_P_SEED = 0x9a4bf788 |
|
static |
| constexpr uint GT_GPUTrace::CV_SEED = 0xf2ee2275 |
|
static |
| constexpr uint GT_GPUTrace::EG_SEED = 0x139fa345 |
|
static |
| constexpr uint GT_GPUTrace::PIXEL_SEED = 0x73aecd3d |
|
static |
| constexpr uint GT_GPUTrace::RN_SEED = 0xe4df7f01 |
|
static |
| constexpr uint GT_GPUTrace::TH_SEED = 0x4c910506 |
|
static |
The documentation for this class was generated from the following file: