Skip to content

Release v0.4.2: General updates

Compare
Choose a tag to compare
@mkkellogg mkkellogg released this 10 Jun 14:56
· 76 commits to main since this release
51b39d9
  • Updates targeting memory usage:

    • 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
  • 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() or Viewer.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:

  • Changed Viewer.addSplatScene() parameter: streamView to progressiveLoad