mrdoob / three.js

JavaScript 3D Library.
https://threejs.org/
MIT License
102k stars 35.33k forks source link

Editor Local Mode: File-open/save and Folder-browser-tab #24766

Open leweyg opened 1 year ago

leweyg commented 1 year ago

Editor Local Mode: File-open/save and Folder-browser-tab

Is your feature request related to a problem? Please describe.

The current editor is difficult to use for local project editing, lacking a folder browser, file open/save capabilities, and isn't oriented towards 'path-based' scenes that link to other content/sub-scenes via file paths. This is in contrast to other major editors (such as Unity/Unreal/Godot) which are wholly project oriented and provide excellent tools for browsing/editing large collections of models and resources that are then combined/built into shippable packages. For example the editor is not even particularly good at exploring/editing the example collection of content packaged within the three.js git itself.

Describe the solution you'd like

Demo of solution: https://leweyg.github.io/lewcid_editor/ (contains folder view of three.js examples, opened by URL).

Couple main features:

Describe alternatives you've considered

Two main alternatives:

  1. Use a traditional editor that does support project/git oriented editing, and effectively export to three.js for runtime only with a custom build pipeline. Seems un-neccasary considering the small additions required.
  2. Import and review individual assets in the three.js editor in a somewhat clunky fashion and just avoid trying to review features in the editor that require cross file collaboration or iteration (using a mixture of vscode and different tools to work around these).

Additional context

As a long time professional 3D app/game/open-source developer, while I love the three.js runtime, the Editor is really not in a place where I feel it is ready for large-scale project editing or passing to traditional art teams to work with it in an effective manner that is team/git oriented. Yet it wouldn't take too many additions to get it into that place.

To prototype (or develop this concept for my own purposes), I've made a branch and am working on these features here: https://github.com/leweyg/lewcid_editor

Thanks for your consideration,

-Lewey Geselowitz http://lewcid.com/lg/aboutme.html

leweyg commented 1 year ago

Sample example scenes and images to express what's like to have a "Folder" view in the Editor: https://leweyg.github.io/lewcid_editor/editor/index.html?file_path=../examples/models/obj/spacekit/a_spacekit_scene.json

lewcid_editor_spacekit_scene

https://leweyg.github.io/lewcid_editor/editor/index.html?file_path=../examples/models/obj/spacekit/a_spacekit_all.json

lewcid_editor_kits