Opt-in (InspectSceneModelParams.checkGeometryArrayLengths).
Emits one GEOMETRY_ARRAY_OVERSIZED warning per geometry whose
raw positionsCompressed, indices, normalsCompressed, or
uvsCompressed array length exceeds the matching configured
threshold.
Distinct from denseGeometries, which measures vertex /
primitive counts — this check measures the raw .length of
each typed array, because that's the unit the
WebGLRenderer's GPUMemoryBatch.addMesh allocator measures
against. A geometry that survives denseGeometries can still
trip the batch portion limits (e.g. a Lines primitive whose
indices array is huge but whose triangle count is zero), so
the two cover different failure modes.
Catches the renderer's
GPUMemoryBatch.addMesh: Unable to allocate indices portion (of length 147804) for geometry 78 - limit is 90000 indices
class of error before the GPU upload, so the user can split
the offending geometry via splitOversizedGeometry or
raise MemoryConfigs.maxBatchVertices / maxBatchIndices
ahead of time.
Pairs with splitOversizedGeometry. Pieces that still
exceed any threshold after the split surface as new issues on
the next inspection pass — the user (or
optimizeSceneModel) re-runs inspect → applyFixes until
the report converges.
Opt-in (InspectSceneModelParams.checkGeometryArrayLengths). Emits one
GEOMETRY_ARRAY_OVERSIZEDwarning per geometry whose rawpositionsCompressed,indices,normalsCompressed, oruvsCompressedarray length exceeds the matching configured threshold.Distinct from denseGeometries, which measures vertex / primitive counts — this check measures the raw
.lengthof each typed array, because that's the unit theWebGLRenderer'sGPUMemoryBatch.addMeshallocator measures against. A geometry that survivesdenseGeometriescan still trip the batch portion limits (e.g. aLinesprimitive whoseindicesarray is huge but whose triangle count is zero), so the two cover different failure modes.Catches the renderer's
GPUMemoryBatch.addMesh: Unable to allocate indices portion (of length 147804) for geometry 78 - limit is 90000 indicesclass of error before the GPU upload, so the user can split the offending geometry via splitOversizedGeometry or raise
MemoryConfigs.maxBatchVertices/maxBatchIndicesahead of time.Pairs with splitOversizedGeometry. Pieces that still exceed any threshold after the split surface as new issues on the next inspection pass — the user (or optimizeSceneModel) re-runs inspect → applyFixes until the report converges.