Regarding .babylon file format (scene import/export using editor)


ive recently been experimenting with the scene export/import functionality especially in combination with the community maintained Babylon.JS Editor (v4).

something that ive noticed is that some scene components don’t seem to be properly exported from the editor and can’t be reimported. one example of that would be the post processing rendering pipelines. heres some details ive noticed:

  • for some reason these pipelines get written in the metadata field of the .babylon json file. is this intended?
  • another thing ive noticed is that the exported .babylon scene file from the editor cant be imported into a regular babylon-based project. loading the scene via SceneLoader / FilesInput doesn’t seem to work and throws errors: Unable to load from file:scene.babylon: importScene of scene.babylon from Babylon.JS Editor version: v4.7.0, exporter version: v6.0.0 [...]
  • importing the scene file into the official sandbox works, but it doesn’t retain the rendering pipelines? theres probably many more components that are also not supported that ive missed - is there a list of this?
  • a quick look into the sandbox source code shows theres some extra boilerplate code to load certain things inside of a scene - is this required to load a babylon scene from the editor?

besides the inconsistencies noted, one general question I would have is if theres a better way to represent or serialize an entire babylon scene?

or perhaps is the SceneLoader even easily extendable e.g. extending it with rendering pipelines or even entirely custom components (non-babylon)?

any ideas how to approach a workflow that allows me to easily serialize a scene with as much components as possible (+ maybe even custom ones) and re-import it again? this doesnt have to work in the official sandbox, its ok if this only works with a custom local module (or extension) as well.

Adding @julien-moreau the editor daddy.