Commit Graph

5 Commits

Author SHA1 Message Date
Andreas Sundquist f60c2b0cf9 Custom/extended splat encoding ranges, Premultiplied alpha for hyper-saturated colors (#134)
* Externalized SparkRenderer.maxPixelRadius and .minAlpha settings. Added to documentation. Added to examples/editor under Debug folder, moved sort32 there.

* Added SplatEncoding concept, applied individually to SparkRenderer (rgbMin/Max, lnScaleMinMax), SplatMesh (additionally sh1Min/Max, sh2, sh3). Updated examples/editor to control settings via gui. Updated all related code to pipe along settings where needed.
Added SparkRenderer.premultipliedAlpha to control blend mode and enable hyper-saturated color contributions by default.

* Fix SplatLoader not passing along encoding. Complete renaming to splat encoding.
2025-07-23 10:04:24 -07:00
Andreas Sundquist 70c9cb90a9 Fix incorrect SH2 coefficient signs (#64) 2025-06-23 14:43:30 -07:00
Andreas Sundquist acb541cc4e Renamed "forge" to "spark". Updated meta-references and future domain. (#40) 2025-06-09 13:50:08 -07:00
Andreas Sundquist 156bbf400e SPZ writing, exporting, & viewer. Creates a new npm run to-spz which runs scripts/to-spz.js to convert any Gsplat input file to compress .spz. Also includes a configurable viewer examples/viewer that can load splats via drag-n-drop, from url query param, the URL text list, can edit sets of SplatMesh, and export composite .SPZ with some filters. Refactored some loading code from worker.ts to loader files so they can be called from Nodejs. Created api transcodeSpz with options to combine multiple source Gsplat files into one without losing coding quality along the way. 2025-05-26 22:31:28 -07:00
Diego Marcos 3332f609a9 Initial commit 2025-05-24 00:14:53 -07:00