Point Cloud Content
GPU-resident point cloud content for a single pnts tile. Single VBO with interleaved [posX, posY, posZ, colorR, colorG, colorB, colorA] (7 floats = 28 bytes per point). Color is normalized to 0, 1 floats at parse time to keep the shader path simple.
Lifecycle:
preparePointCloudContent runs off the render thread on the parse coroutine, interleaves position + colour into
interleavedVertices, and computes the local bounding sphere.syncPointCloudContentGpu runs each render frame, looking up the VBO from the cache and re-uploading
interleavedVerticeswhen the cache has dropped it. The CPU-side payload stays alive on the content for this re-upload path.
4x memory overhead vs packed uint8 RGBA, but the all-float layout means we reuse the existing NumericArray.Floats upload pipeline without introducing a Bytes variant.
Properties
Flipped to true on the first successful syncPointCloudContentGpu call.
Approximate GPU footprint of this content in bytes, page-aligned by the cache.
Tile-local-space bounding sphere — computed during preparePointCloudContent.
Number of points; populated by preparePointCloudContent.
RTC_CENTER offset to compose with the tile-to-world transform.
Vertex stride in bytes (28 = 7 floats).