Any additional attributes
Optionaltransform?: readonly number[]Transformation matrix (16 elements for a column-major 4x4 matrix).
Typed as readonly number[] because zarr metadata is parsed
dynamically; see import('../types/zarr').Matrix4x4 for the
narrowed 16-tuple shape.
Optionalnd_transform?: NdTransformMapPer-dimension transforms for non-displayed dimensions
Optionalopacity?: numberRendering attributes
Optionalabsorption?: numberOptionalgamma?: numberOptionalintensity?: numberOptionaloffset?: numberOptionalblending_mode?: stringOptionaljoin?: stringLines-only join style at degree-2 polyline joints: 'none' | 'miter' (#790).
Optionalmax_radius?: numberOptionaln_points?: numberOptionallayer?: booleanWhether this node is exposed as a layer in the Layers panel
Optionalvisible?: booleanInitial visibility when the scene loads (default: true). Authoring-time only.
Optionalcolor_data_range?: [number, number]Min/max of color data, computed at encoding time
Optionalamplitude_data_range?: [number, number]Min/max of amplitude data (GSplats), computed at encoding time
Optionalscalar_data_range?: [number, number]Min/max of scalar data (Points/Lines), computed at encoding time
Optionalcolormap?: stringColormap name for scalar-to-color mapping (e.g., "viridis", "green", "custom")
Optionalhas_scalars?: booleanWhether this node has scalar values for colormap lookup
Optionalextend_to_all?: string[]Dimensions to extend visibility across (points visible at all values)
Create a progressive mesh loader for a REVEAL-ladder node.
Walks
additive_<i>/subgroups under the node path and builds one MeshWholeNodeLoader per level, wrapped in aMeshProgressiveLoader. Structurally the sibling of the three factories above; two differences, both following from what a mesh ladder is:lod_stats.energy_fraction_cumso the display gate can release an upgrade early andenergyCompensationcan brighten an incomplete emissive prefix. A reveal prefix is a partial object at FULL brightness, so that multiplier would blow out the first shell and fade it as the surface completes — the inverse of growing in. Not reading the stamps is the second of the three latches (MeshProgressiveLoader.committedEnergyFractionand the Python writer's refusal are the others;MESH_NODE_SPEC.md§9.1).SliceCache. A mesh level is whole-node resident, so its own decode is the cache and lasts the node's lifetime; a per-slice ladder entry would store the same bytes under every key.This function REPLACED a deliberate rejection. Mesh has no additive level-of-detail ladder and still never will — a prefix of an arbitrary index buffer is a holed surface, not a coarser one — but a REVEAL is a different claim: the writer admits only orderings whose every prefix is one connected patch (
MESH_ADDITIVE_METHODS = {"radial"}), so what streams in is a growing surface rather than lace. SeeMESH_NODE_SPEC.md§9 for the distinction.