Global renderer/packer constants.
Two layouts exist:
- CPU/file-packed splat = 128 B (legacy) We actively use the first 80 B; the remaining 48 B are reserved.
- GPU texture atlas = 5 texels per splat (RGBA32F → 5 * 16 B = 80 B).
SH0 (DC) is folded into base RGB. The 45 residual SH coeffs (l=1..3) are stored as 12 packed uint32 words (48 B) and unpacked in the shader.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- baseColourBias → const double
- Bias used when folding DC into 8-bit RGB: baseRGB = clamp01(baseColourBias
- byteMax → const int
- bytesPerSplat → const int
- Total bytes per splat in the binary file / CPU buffer (aligned).
- bytesPerSplatInTexture → const int
- Bytes per splat once uploaded to the GPU.
- bytesPerTexel → const int
- Bytes per texel for RGBA32F.
- colorOffset → const int
- covarianceScale → const double
- Σ' = covarianceScale * (M * Mᵀ) as in the paper implementation.
- defaultScale → const double
- Fallback linear scale if PLY lacks scale_* properties.
- maxSplatPixelSize → const double
- Maximum pixel diameter for a single splat in screen space.
- outputRowLength → const int
- Bytes per row written by the file processor (must equal bytesPerSplat).
- pixelsPerSplat → const int
- Texels per splat in the atlas: P0: pos.xyz + quat(w) | P1: scale.xyz + color(w) | P2–P4: SH words
- posOffset → const int
- quatByteMid → const int
- CPU packing: q_byte = clamp(round(q * quatScale + quatByteMid), 0, 255) Shader decode: q = (byte - quatByteMid) / quatScale, then normalized.
- quatOffset → const int
- quatScale → const int
- scaleOffset → const int
- shC0 → const double
- Real Y₀⁰ normalization (DC basis). Base RGB stores 0.5 + shC0 * f_dc.
- shMax → const double
- shMin → const double
- Quantization range for residual SH (l=1..3). Pack: byte = round((clamp(c, shMin, shMax) - shMin) * 255 / (shMax - shMin)) Unpack: value = byte * 8/255 - 4
- shOffset → const int
- shPackedWords → const int
- shSpan → const double
- splatIdxColMask → const int
- splatsPerInstance → const int
- Number of Gaussian splats to draw per instanced batch.
- splatsPerRow → const int
- texWidth → const int
- Atlas width in pixels. With bit-addressing in the shader we require: texWidth == pixelsPerSplat * 512 (= 2560), so base_uv = ((idx & 0x1ff) * pixelsPerSplat, idx >> 9)
- usedBytesPerSplat → const int
- Portion of the 128 B actually consumed by the uploader (mirrors GPU footprint).