NTrace
GPU ray tracing framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
FW::CudaPersistentBVHTracer Class Reference

#include <CudaPersistentBVHTracer.hpp>

Public Member Functions

 CudaPersistentBVHTracer (Scene &scene, F32 epsilon)
 
F32 traceBatch (RayBuffer &rays)
 
F32 buildBVH (bool sbvh)
 
F32 buildKdtree ()
 
F32 traceBatchBVH (RayBuffer &rays, RayStats *stats=NULL)
 
F32 traceBatchKdtree (RayBuffer &rays, RayStats *stats=NULL)
 
F32 traceOnDemandBVH (RayBuffer &rays, bool rebuild, int numRays=0)
 
F32 traceOnDemandKdtree (RayBuffer &rays, bool rebuild, int numRays=0)
 
void traceOnDemandTrace (RayBuffer &rays, F32 &GPUmegakernel, F32 &CPUmegakernel, F32 &GPUtravKernel, F32 &CPUtravKernel, int &buildNodes, RayStats *stats=NULL)
 
F32 test ()
 
F32 convertWoop ()
 
void resetBuffers (bool resetADSBuffers)
 
void trimBVHBuffers ()
 
void trimKdtreeBuffers ()
 
F32 getCPUTime ()
 
F32 getGPUTime ()
 
void getStats (U32 &nodes, U32 &leaves, U32 &emptyLeaves, U32 &stackTop, U32 &nodeTop, U32 &tris, U32 &sortedTris, bool sub=true)
 
void getSizes (F32 &task, F32 &split, F32 &ads, F32 &tri, F32 &triIdx, F32 &heap)
 

Detailed Description

Definition at line 21 of file CudaPersistentBVHTracer.hpp.

Constructor & Destructor Documentation

CudaPersistentBVHTracer::CudaPersistentBVHTracer ( Scene scene,
F32  epsilon 
)

Definition at line 21 of file CudaPersistentBVHTracer.cpp.

Member Function Documentation

F32 CudaPersistentBVHTracer::buildBVH ( bool  sbvh)

Definition at line 268 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::buildKdtree ( )

Definition at line 500 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::convertWoop ( )

Definition at line 3905 of file CudaPersistentBVHTracer.cpp.

F32 FW::CudaPersistentBVHTracer::getCPUTime ( )
inline

Definition at line 133 of file CudaPersistentBVHTracer.hpp.

F32 FW::CudaPersistentBVHTracer::getGPUTime ( )
inline

Definition at line 134 of file CudaPersistentBVHTracer.hpp.

void CudaPersistentBVHTracer::getSizes ( F32 task,
F32 split,
F32 ads,
F32 tri,
F32 triIdx,
F32 heap 
)

Definition at line 4065 of file CudaPersistentBVHTracer.cpp.

void CudaPersistentBVHTracer::getStats ( U32 nodes,
U32 leaves,
U32 emptyLeaves,
U32 stackTop,
U32 nodeTop,
U32 tris,
U32 sortedTris,
bool  sub = true 
)

Definition at line 4007 of file CudaPersistentBVHTracer.cpp.

void CudaPersistentBVHTracer::resetBuffers ( bool  resetADSBuffers)

Definition at line 3925 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::test ( )

Definition at line 1018 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::traceBatch ( RayBuffer rays)

Definition at line 160 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::traceBatchBVH ( RayBuffer rays,
RayStats stats = NULL 
)

Definition at line 360 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::traceBatchKdtree ( RayBuffer rays,
RayStats stats = NULL 
)

Definition at line 598 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::traceOnDemandBVH ( RayBuffer rays,
bool  rebuild,
int  numRays = 0 
)

Definition at line 743 of file CudaPersistentBVHTracer.cpp.

F32 CudaPersistentBVHTracer::traceOnDemandKdtree ( RayBuffer rays,
bool  rebuild,
int  numRays = 0 
)

Definition at line 801 of file CudaPersistentBVHTracer.cpp.

void CudaPersistentBVHTracer::traceOnDemandTrace ( RayBuffer rays,
F32 GPUmegakernel,
F32 CPUmegakernel,
F32 GPUtravKernel,
F32 CPUtravKernel,
int &  buildNodes,
RayStats stats = NULL 
)

Definition at line 880 of file CudaPersistentBVHTracer.cpp.

void CudaPersistentBVHTracer::trimBVHBuffers ( )

Definition at line 3950 of file CudaPersistentBVHTracer.cpp.

void CudaPersistentBVHTracer::trimKdtreeBuffers ( )

Definition at line 3972 of file CudaPersistentBVHTracer.cpp.


The documentation for this class was generated from the following files: