Add ability to set the compression level of a .ply that's loaded into memory for rendering (not export to .ksplat) via the Viewer parameter plyInMemoryCompressionLevel. Previously it would be stored as an uncompressed SplatBuffer, but now the compression level can be chosen and valid values are the same as when exporting to .ksplat: 0, 1, or 2. Default is 2.
Add option to free intermediate splat data after a scene is loaded via the Viewer parameter freeIntermediateSplatData. When true, the intermediate splat data that is the result of decompressing splat bufffer(s) and is used to populate the data textures will be freed. This will reduces memory usage, but if that data needs to be modified it will need to be re-populated from the splat buffer(s). Default is false.
Reduced amount of memory needed by the sorting worker
Updates targeting memory usage:
.ply
that's loaded into memory for rendering (not export to.ksplat
) via theViewer
parameterplyInMemoryCompressionLevel
. Previously it would be stored as an uncompressedSplatBuffer
, but now the compression level can be chosen and valid values are the same as when exporting to.ksplat
: 0, 1, or 2. Default is 2.Viewer
parameterfreeIntermediateSplatData
. When true, the intermediate splat data that is the result of decompressing splat bufffer(s) and is used to populate the data textures will be freed. This will reduces memory usage, but if that data needs to be modified it will need to be re-populated from the splat buffer(s). Default is false.Add ability to import reduced-memory version of INRIA
.ply
files (more info here: https://repo-sam.inria.fr/fungraph/reduced_3dgs/)Split spherical harmonics into multiple textures for large scenes
Add ability to toggle splat scene visibility or set the opacity of individual splat scenes.
Fixed bug preventing
Viewer.addSplatScene()
orViewer.addSplatScenes()
from working after scenes have already been added.Fixed sorting crash on iOS < 17.0 where SIMD is not supported in web assembly modules
Fixed bug with progressively loading dynamic scenes
Breaking changes:
Viewer.addSplatScene()
parameter:streamView
toprogressiveLoad