Optional ReadonlyintersectionSAH cost of testing one triangle. Default 1.
Optional ReadonlymaxLargest leaf the SAH collapse may make. 1 to 8; default 8, the layout's largest leaf.
Optional ReadonlynodeThe node format the tree is written in: 'f32' (64 bytes, the default
for a mesh tree; a scene quantizes it as it places it, DEFAULT_NODE_FORMAT)
or 'quantized' (32-byte nodes on a per-mesh grid, the frame slot
first; docs/internals/design/compressed-nodes.md).
A coordinate of magnitude 2^100 or more, or a non-finite one, makes a quantized box empty on that axis (hits there are lost).
Optional ReadonlyonCalled once per GPU batch with its times, before the call resolves. A GPU builder only (tinybvh is never called, the fallback included); the batch's pass is timed with timestamp queries only when this is given.
Optional ReadonlytraversalSAH cost of visiting a node, relative to intersectionCost. Default 1.
Optional ReadonlytrianglePer mesh of a batch: triangles (in the output format's units, 48 or 16
bytes) left free before the mesh's triangles in the batch's triangle
buffer, so a scene that adopts the buffer can write what goes there (an
indexed scene's mesh header and side tables: SceneTrees with
gpuTreeOutputs: 'adopt'). Each range's triangleOffset is after its
gap. Default: none (every mesh's triangles right after the last's).
Optional ReadonlytriangleThe triangle format the tree is written in: 'records' (48 bytes, the
default) or 'indexed' (16 bytes, mesh-relative vertex indices;
docs/internals/design/indexed-leaves.md). The nodes are the same either way.
Options of MeshLayoutBuilder.buildLayouts: the builders' common ones, and timing.