Modifying the BSJ Editor

Hey guys,

I’m new around these parts and was wondering is there any documentation on modifying the BJs Editor, it can be from the source or through the plugin system.

I wanting to build an extension that allows users, in the Inspector, to show/edit node Tags and if everything went well with that do the same for node metadata.

My questions are

  1. Do I have to “build” a plugin with the editor like the photoshop-extension?
  2. How does one hook into the preview scene/inspector/graph/assets tools?

Thx in advance this community is great

Welcome aboard!

Adding @julien-moreau who is the creator and maintainor of the editor.

2 Likes

Hey @TroyGotCode !

Excellent question :slight_smile:
Basically I think that all user-specific usage should be done using a plugin. Else, if it looks useful for the community it should be added in the editor itself, like the photoshop extension is. For example I find your request really interesting and i think it can be interesting to have it directly in the editor :slight_smile:

Unfortunately there is no documentation at the moment for plugins system. Anyway, would like to contribute ? If yes, I’ll add the documentation :slight_smile:

1 Like

Thanks @julien-moreau

I’d love to. I made some headway looking at the babylonjs-editor-publish-plugin. I see the “editor” instance passed around has most of the magic and the plugins AbstractInspector implementation should handle life cycle stuff. Some docs on interacting with editor.(assets/inspector/graph), would be awesome

@TroyGotCode I 100% agree with the doc. I recently finished re-implementing all inspector tools by fully using React (instead of the dat.gui library used to generate the editable fields in the inspectors).

The next step will then be the documentation with a plugin example

Ill be on the lookout. Are their drastic changes from the current plugin system?

Yeah the plugins system is backward compatbile :slight_smile:
I’ll share an example of plugin ASAP. In the meantime you can check this plugin which is pretty complete: babylonjs-editor-quixel-plugin/src at release/2.0.0 · julien-moreau/babylonjs-editor-quixel-plugin · GitHub (be careful to watch files on the branch release/2.0.0)

Thanks, I’m going to dive in this weekend hopefully have something good :face_with_monocle:

1 Like

I think I’m getting the hang of it! The tags are saved in the metadata and work with saving/loading the scene.

Idk why the metadata that’s used to store the tags works in, but not the tags on the object when you play the scene.

Got it working! getting ready to clone the editor

.