@pmndrs/bvh
    Preparing search index...

    Type Alias GpuLayoutNodeFormat

    GpuLayoutNodeFormat: "f32" | "quantized"

    How a tree stores its nodes (docs/internals/design/compressed-nodes.md). Every tree and scene is one or the other, and the walk is compiled for one (traceModuleWgsl({ nodeFormat })):

    • 'f32': 64-byte nodes with f32 child boxes, GPU_LAYOUT_NODE_WORD. The format of a single mesh's tree from every builder unless asked otherwise (refits run on it), and of data that names no format.
    • 'quantized' (the default for scenes and walks, DEFAULT_NODE_FORMAT): 32-byte nodes, GPU_LAYOUT_QUANTIZED_NODE_WORD: each child box as 16-bit planes on a grid (the frame) that covers the mesh, and each child as one stack reference. The buffer starts with the frame slot (32 bytes, GPU_LAYOUT_NODE_FRAME_WORD), then the nodes: node i is slot i + 1, so nodes holds nodeCount + 1 slots. A scene keeps the frame slot right before each mesh's root (rootNodeOffset - 1). Boxes are rounded outward, so a decoded box always contains the exact one.