Releases: sparkjsdev/spark
Releases · sparkjsdev/spark
v0.1.10
0.1.10 (Oct 24, 2025)
SOG v2 support, new examples and bug fixes
Enhancements
- SOGSv2 (SOG) compression format support (#179) (@mrxz)
- Use DecompressionStream for decompressing .spz files for faster loading times (#181) (@mrxz)
- Make WASD default control for viewer (#6d7d801) (@dmarcos)
- Add
minPixelRadiusproperty to discard splats during vertex shader (#184) (@mrxz) - Docs enhancements (@querielo)
- Interactive holes example (#189) (@kali-shade)
- Interactive ripples effect (#194) (@kali-shade)
- Support logarithmic depth buffer (#199) (@Philipp-M)
Bug fixes
v0.1.9
0.1.9 (Sep 22, 2025)
Performance improvements, SPZ v3 support, new splat transition and reveal effects, brush painting / erasing splat example.
Enhancements
- New splat transition effects (#172) (@kali-shade)
- New splat reveal effects (#153, #149) (@kali-shade)
- Add support for SPZ v3 (fix #151) (#171) (@gwegash, @dmarcos)
- Reduce small memory allocations when loading ply files (#147) (@mrxz)
- Improve .ply parsing speed using compiled parser function (#150) (@mrxz)
- Add support for ortographic rendering (#157) (@mrxz)
- Make sure all examples resize when the window is resized (#155) (@mrxz)
- Call gl.flush() to encourage eager execution. SparkRenderer.updateInternal was not immediately executed (#156) (@mrxz)
- Use child mesh in
SplatMeshto auto-injectSparkRendererinstead of monkey-patching (#158) (@mrxz) - Pre-compute lookup tables when parsing SOGS files (#159) (@mrxz)
- Avoid allocating THREE.Quaternion instances in
setPackedSplat(#160) (@mrxz) - Use native
Float16Arrayto encode a number as a float16 if available. (#161) (@mrxz) - Splat brush painting / brush erasing example (#165) (@winnie1994)
v0.1.8
v0.1.7
0.1.7 (July 30, 2025)
Image quality and performance improvements.
Enhancements
- Customizable splat encoding ranges (rgb, sh1, sh2, sh3) for wider range of colors and scales support improving contrast and color reproduction. Expose
premultipliedAlphaflag to use when accumulating splat RGB (#134) (@asundqui) - Experimental Stochastic splat ordering option. Faster rendering since sorting no longer needed but with some visual quality tradeoffs (#8f5596e) (@asundqui)
- Higher precision mode (float32) for splat sorting in addition to the default one (float16). Addresses z-fighting issues between splats (@asundqui, @mrxz) (#129)
- Allow decoding and parsing of SOGS images to happen in parallel (@mrxz) (#122)
- New splat shaders effect example (#141) (@kali-shade)
- Expose
minAlphaandmaxPixelRadiusin the SparkRenderer parameters (#130) (@asundqui) - Tree-shaking on worker code (@mrxz) (#118)
- Add JSDocs to docs (@mrxz) (#123)
- Use THREE.js built-in full screen quad instead of custom setup to cover the entire render target (@mrxz) (#121)
- Redunce bundle size by removing
anyhow::anyhowdependency (#127) (@asundqui)
v0.1.6
0.1.6 (July 11, 2025)
Visual quality improvements, .zip sogs file support, bug fixes.
Enhancements
- Can load SOGS compressed splats packaged in a .zip file (#100) (@asundqui)
- Rename
SparkRendererrenderScale parameter to focalAdjustment (#113) (fix #99) (@asundqui, @mrxz) - Use OffscreenCanvas and WebGL2 context to decode webp SOGS images instead of 3rd party dependency (#90) (@mrxz)
- Animated transitions between splats example (#69) (@winnie1994)
- Example of loading a SOGS compressed splat (@dmarcos, @vincentwoo, @61cygni)
- Expand value range of internal splat encoding to improve visual quality. Lower zero cut-off to retain and render small splats. (#110) (@asundqui, @mrxz)
Bug fixes
- Fix visible property of SplatMesh not having effect. (fix #77) (#100) (@asundqui, @cyango)
- Add missing sh1 and sh2 support to SOGS compressed support (fix #108) (#109) (@lucasoptml)
- Prevent unintentional reuse of ArrayBuffer on concurrent file requests or hits to THREE.Cache. Replace use of THREE.FileLoader with fetch API (#94, #112) (fix #93) (@mrxz, @asundqui)
v0.1.5
0.1.5 (July 1, 2025)
Visual quality improvements and SOGS support
Enhancements
- Support for SOGS compression format for 3D Gaussian Splatting (#73) (@asundqui)
- Change splat shapes by using any RGBA texture to compute the Gaussian falloff (#79) (@asundqui)
- Use RenderTarget properties to reduce manual render state tracking (#80) (@mrxz)
Bug fixes
- Visual quality, Fix .ksplat decoding (fix #66) (@asundqui)
- Visual quality, Fix Spherical Harmonics not included in SPZ transcoding (fix #66) (#83) (@asundqui)
- Visual quality, Fix incorrect calculation of renderer size. Especially improves rendering in high DPI displays (#71) (@mrxz)
- Fix support of compressed .ply files exported from SuperSplat. Newer versions include min/max_r/g/b properties in the header that were not parsed (#82) (@asundqui)
v0.1.4
Fix types export in NPM package
v0.1.3 Add 0.1.3 to changelog
Remove unnecessary dependencies from NPM package
v0.1.2 Bump version in docs
Ranaming Forge to Spark and bug fixes
A name collision with an existing rendering engine went unnoticed and we're renaming the project. We apologize for the mistake and the inconvenience.
Bug fixes
- Fix compressed .ply files by gsplat not loading (#34) (@bolopenguin, @asundqui)
- Fix image quality rendering with mostly transparent splats (#36) (@hybridherbst, @@asundqui)
- Fix SplatMesh not rendering when it's a child of an Object3D (#38) (@dmarcos)