← Back to context

Comment by flohofwoe

9 months ago

There's basically two paths:

(1) Build a generic and extensible UI tool which at the core is a 3D scene viewer, object outliner and an asset browser (similar to how VSCode is such a tool for 'mostly text data' for 3D scenes). Implement anything else as engine specific plugins - Blender can be that tool, but it would be important to do a complete UI overhaul to get the modelling and animation features out of the way.

(2) Integrate the editor UI right into your engine, which is quite trivial with Dear Imgui - the tricky part here is that game state data should either be organized for editing, or for runtime performance. Mixing both isn't a good idea (unless moddability is a priority).

About a decade ago I would probably have opted for option (1), nowadays I tend towards option (2).

I feel like path #1 would also run into the same problems as #2 as soon as there was any need for real-time editing of scenes.