Summary
When converting between SOG and other formats using the splat transform CLI, there is currently no way to track how gaussian indices from the source file map to their new positions in the output. A --map flag that exports a JSON index map would make it significantly easier to maintain gaussian persistence across format conversions.
Motivation
When working with SOG alongside supplementary data files (e.g. a PLY in non-Morton order, or files containing per-gaussian metadata similar to how the engine handles texture streams), those files must stay in sync with the SOG during editing. Without a canonical reference for where each gaussian lands after encoding and decoding; especially once a sort worker or other render-time utility is involved. Maintaining that sync becomes error-prone and requires custom per-project tracking solutions or less flexible architecture.
This is a quality-of-life gap that currently forces users to implement their own index trackers outside of the toolchain.
Proposed solution
Add an optional --map flag to the splat transform CLI. When provided, the tool writes a JSON file alongside the output containing an array or object that maps each original gaussian index (in the input file) to its corresponding index in the output SOG.
Example usage
splat-transform input.ply output.sog --map output.map.json (or output.map. where T is supported filetypes as a generic)
Additionally
You could take the approach of creating a binary mask or clever filter that utilizes webp format to create a more graphically bound template.
For instance a mapping could for instance be a unsigned assortment of integers that simply modifies the index value through basic addition and subtraction like an intermediary mask and could be passed to the gpu to apply in runtime. Additional use cases could be reverse engineering of Morton order if required and support for more flexible data manipulation. The other idea is more on the backend side of things where you want update / sync different file types but keep the same scene and so forth.
Summary
When converting between SOG and other formats using the splat transform CLI, there is currently no way to track how gaussian indices from the source file map to their new positions in the output. A --map flag that exports a JSON index map would make it significantly easier to maintain gaussian persistence across format conversions.
Motivation
When working with SOG alongside supplementary data files (e.g. a PLY in non-Morton order, or files containing per-gaussian metadata similar to how the engine handles texture streams), those files must stay in sync with the SOG during editing. Without a canonical reference for where each gaussian lands after encoding and decoding; especially once a sort worker or other render-time utility is involved. Maintaining that sync becomes error-prone and requires custom per-project tracking solutions or less flexible architecture.
This is a quality-of-life gap that currently forces users to implement their own index trackers outside of the toolchain.
Proposed solution
Add an optional --map flag to the splat transform CLI. When provided, the tool writes a JSON file alongside the output containing an array or object that maps each original gaussian index (in the input file) to its corresponding index in the output SOG.
Example usage
splat-transform input.ply output.sog --map output.map.json (or output.map. where T is supported filetypes as a generic)
Additionally
You could take the approach of creating a binary mask or clever filter that utilizes webp format to create a more graphically bound template.
For instance a mapping could for instance be a unsigned assortment of integers that simply modifies the index value through basic addition and subtraction like an intermediary mask and could be passed to the gpu to apply in runtime. Additional use cases could be reverse engineering of Morton order if required and support for more flexible data manipulation. The other idea is more on the backend side of things where you want update / sync different file types but keep the same scene and so forth.