|
HDK
|
#include <CE_BVH.h>
Public Types | |
| enum | PrimType { PrimType::TRI, PrimType::QUAD, PrimType::TET, PrimType::POINT } |
Public Member Functions | |
| CE_BVH () | |
| ~CE_BVH () | |
| void | build (const CE_Int32Array &trisingrp, const cl::Buffer &primptsidx, const cl::Buffer &primpts, const cl::Buffer &P, PrimType primtype=PrimType::TRI, bool refitTets=true) |
| void | buildPoints (const CE_Int32Array &pts, const cl::Buffer &P) |
| Convenience overload for point BVH — no prim connectivity needed. More... | |
| void | buildEmpty () |
| void | refit (const CE_Int32Array &trisingrp, const cl::Buffer &primptsidx, const cl::Buffer &primpts, const cl::Buffer &P) |
| void | clear () |
| bool | isBuilt () const |
| const cl::Buffer & | nodeBuffer () const |
| const cl::Buffer & | verticesBuffer () const |
| const cl::Buffer & | primIdxBuffer () const |
| const cl::Buffer & | ptsBuffer () const |
|
strong |
| CE_BVH::CE_BVH | ( | ) |
| CE_BVH::~CE_BVH | ( | ) |
| void CE_BVH::build | ( | const CE_Int32Array & | trisingrp, |
| const cl::Buffer & | primptsidx, | ||
| const cl::Buffer & | primpts, | ||
| const cl::Buffer & | P, | ||
| PrimType | primtype = PrimType::TRI, |
||
| bool | refitTets = true |
||
| ) |
| void CE_BVH::buildEmpty | ( | ) |
Build a valid but empty point BVH. All traversal queries return zero results immediately (the root node's child AABBs are at infinity so the distance check in BVH_TRAVERSE_BEGIN exceeds any finite threshold). All four kernel buffers (nodes, verts, idx, pts) are non-null so they can be bound to kernel arguments without error.
| void CE_BVH::buildPoints | ( | const CE_Int32Array & | pts, |
| const cl::Buffer & | P | ||
| ) |
Convenience overload for point BVH — no prim connectivity needed.
| void CE_BVH::clear | ( | ) |
| bool CE_BVH::isBuilt | ( | ) | const |
|
inline |
|
inline |
|
inline |
| void CE_BVH::refit | ( | const CE_Int32Array & | trisingrp, |
| const cl::Buffer & | primptsidx, | ||
| const cl::Buffer & | primpts, | ||
| const cl::Buffer & | P | ||
| ) |
|
inline |