Blender
V3.3
|
Go to the source code of this file.
Functions | |
btOptimizedBvh () | |
virtual | ~btOptimizedBvh () |
void | build (btStridingMeshInterface *triangles, bool useQuantizedAabbCompression, const btVector3 &bvhAabbMin, const btVector3 &bvhAabbMax) |
void | refit (btStridingMeshInterface *triangles, const btVector3 &aabbMin, const btVector3 &aabbMax) |
void | refitPartial (btStridingMeshInterface *triangles, const btVector3 &aabbMin, const btVector3 &aabbMax) |
void | updateBvhNodes (btStridingMeshInterface *meshInterface, int firstNode, int endNode, int index) |
virtual bool | serializeInPlace (void *o_alignedDataBuffer, unsigned i_dataBufferSize, bool i_swapEndian) const |
Data buffer MUST be 16 byte aligned. More... | |
static btOptimizedBvh * | deSerializeInPlace (void *i_alignedDataBuffer, unsigned int i_dataBufferSize, bool i_swapEndian) |
deSerializeInPlace loads and initializes a BVH from a buffer in memory 'in place' More... | |
Variables | |
btOptimizedBvh | __pad0__ |
The btOptimizedBvh extends the btQuantizedBvh to create AABB tree for triangle meshes, through the btStridingMeshInterface. More... | |
btOptimizedBvh::btOptimizedBvh | ( | ) |
Definition at line 21 of file btOptimizedBvh.cpp.
Referenced by btBvhTriangleMeshShape(), buildOptimizedBvh(), btCollisionWorldImporter::convertAllObjects(), btCollisionWorldImporter::convertCollisionShape(), and btCollisionWorldImporter::createOptimizedBvh().
void build | ( | btStridingMeshInterface * | triangles, |
bool | useQuantizedAabbCompression, | ||
const btVector3 & | bvhAabbMin, | ||
const btVector3 & | bvhAabbMax | ||
) |
Referenced by system_windows_version_at_least().
|
static |
deSerializeInPlace loads and initializes a BVH from a buffer in memory 'in place'
void refit | ( | btStridingMeshInterface * | triangles, |
const btVector3 & | aabbMin, | ||
const btVector3 & | aabbMax | ||
) |
Referenced by Device::build_bvh(), CPUDevice::build_bvh(), and MultiDevice::build_bvh().
void btOptimizedBvh::refitPartial | ( | btStridingMeshInterface * | triangles, |
const btVector3 & | aabbMin, | ||
const btVector3 & | aabbMax | ||
) |
we should update all quantization values, using updateBvhNodes(meshInterface); but we only update chunks that overlap the given aabb
Definition at line 213 of file btOptimizedBvh.cpp.
References btAssert, btBvhSubtreeInfo, m_bvhAabbMax, m_bvhAabbMin, m_quantizedContiguousNodes, m_SubtreeHeaders, m_useQuantization, quantize(), btAlignedObjectArray< T >::size(), testQuantizedAabbAgainstQuantizedAabb(), and updateBvhNodes().
|
virtual |
Data buffer MUST be 16 byte aligned.
Definition at line 47 of file btOptimizedBvh.h.
References serialize().
void btOptimizedBvh::updateBvhNodes | ( | btStridingMeshInterface * | meshInterface, |
int | firstNode, | ||
int | endNode, | ||
int | index | ||
) |
Definition at line 251 of file btOptimizedBvh.cpp.
References BT_LARGE_FLOAT, btAssert, btQuantizedBvhNode, btVector3, m_quantizedContiguousNodes, m_useQuantization, PHY_FLOAT, PHY_INTEGER, PHY_SHORT, PHY_UCHAR, quantize(), stride, type, and void.
Referenced by refitPartial().
|
virtual |
Definition at line 25 of file btOptimizedBvh.cpp.
btOptimizedBvh __pad0__ |
The btOptimizedBvh extends the btQuantizedBvh to create AABB tree for triangle meshes, through the btStridingMeshInterface.
Definition at line 27 of file btOptimizedBvh.h.