This class encodes and compresses quad tree nodes.
More...
#include <NodeCodecQuadTreeHalfFloat.h>
|
void | PrepareNodeAllocate (const AABBTreeBuilder::Node *inNode, uint64 &ioBufferSize) const |
| Mimics the size a call to NodeAllocate() would add to the buffer.
|
|
size_t | NodeAllocate (const AABBTreeBuilder::Node *inNode, Vec3Arg inNodeBoundsMin, Vec3Arg inNodeBoundsMax, Array< const AABBTreeBuilder::Node * > &ioChildren, Vec3 outChildBoundsMin[NumChildrenPerNode], Vec3 outChildBoundsMax[NumChildrenPerNode], ByteBuffer &ioBuffer, const char *&outError) const |
|
bool | NodeFinalize (const AABBTreeBuilder::Node *inNode, size_t inNodeStart, uint inNumChildren, const size_t *inChildrenNodeStart, const size_t *inChildrenTrianglesStart, ByteBuffer &ioBuffer, const char *&outError) |
| Once all nodes have been added, this call finalizes all nodes by patching in the offsets of the child nodes (that were added after the node itself was added)
|
|
bool | Finalize (Header *outHeader, const AABBTreeBuilder::Node *inRoot, size_t inRootNodeStart, size_t inRootTrianglesStart, const char *&outError) const |
| Once all nodes have been finalized, this will finalize the header of the nodes.
|
|
This class encodes and compresses quad tree nodes.
◆ Finalize()
bool NodeCodecQuadTreeHalfFloat::EncodingContext::Finalize |
( |
Header * |
outHeader, |
|
|
const AABBTreeBuilder::Node * |
inRoot, |
|
|
size_t |
inRootNodeStart, |
|
|
size_t |
inRootTrianglesStart, |
|
|
const char *& |
outError |
|
) |
| const |
|
inline |
Once all nodes have been finalized, this will finalize the header of the nodes.
◆ NodeAllocate()
Allocate a new node for inNode. Algorithm can modify the order of ioChildren to indicate in which order children should be compressed Algorithm can enlarge the bounding boxes of the children during compression and returns these in outChildBoundsMin, outChildBoundsMax inNodeBoundsMin, inNodeBoundsMax is the bounding box if inNode possibly widened by compressing the parent node Returns size_t(-1) on error and reports the error in outError
◆ NodeFinalize()
bool NodeCodecQuadTreeHalfFloat::EncodingContext::NodeFinalize |
( |
const AABBTreeBuilder::Node * |
inNode, |
|
|
size_t |
inNodeStart, |
|
|
uint |
inNumChildren, |
|
|
const size_t * |
inChildrenNodeStart, |
|
|
const size_t * |
inChildrenTrianglesStart, |
|
|
ByteBuffer & |
ioBuffer, |
|
|
const char *& |
outError |
|
) |
| |
|
inline |
Once all nodes have been added, this call finalizes all nodes by patching in the offsets of the child nodes (that were added after the node itself was added)
◆ PrepareNodeAllocate()
void NodeCodecQuadTreeHalfFloat::EncodingContext::PrepareNodeAllocate |
( |
const AABBTreeBuilder::Node * |
inNode, |
|
|
uint64 & |
ioBufferSize |
|
) |
| const |
|
inline |
The documentation for this class was generated from the following file: