Implementation NUI Editor

Rostyslav Zatserkovnyi

Member
Contributor
Architecture
GUI
Hunter
BELATED EDIT: The project is now released! Check out the final report at https://rzats.github.io/gsoc/2016-final-report.

Name:
NUI Editor
Summary: An in-game editor for the New User Interface framework.
Current Goal: Finish work on the core features (see https://github.com/rzats/gsoc-nui-editor/issues), add extra polish and documentation.
Location: org.terasology.rendering.nui.editor.

Done:
  • UITreeView - a generalized tree view widget usable by any module, with an adapter allowing conversion to and from JSON files. Includes custom icon support!
  • NUIEditorScreen - the editor interface itself. Includes a tree view displaying the currently edited asset, a box showing a preview of the asset and a (somewhat barebones) settings menu.
  • The tree view allows the user to move, remove & edit nodes (where each node represents a specific JSON data structure: value, object, array etc.), as well as add different kinds of properties based on a node's type or location.
Screenshots (click to expand):

screenshot-01.png
screenshot-02.png
screenshot-03.png

Future / nice-to-have features:

  • Further tree view / preview binding - when the user selects a node in the tree view, display the corresponding part of the widget (and vice versa).
  • Beyond that, the ability to make edits to the preview widget (moving, resizing items etc.) as opposed to the tree view would be great!
Any further ideas regarding possible features are welcome and likely to be implemented as post-GSoC contributions!
 
Last edited:

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Lots of ideas and potential, but I imagine a bunch of them have gone into your GSOC proposal then been reworked over and over as that thing gets polished more than a diamond :D

Looking forward to this, and especially having nicer treeview / editor functionality in-game for stuff like the behavior tree editor and, gasp, dare I say it a rendering pipeline visualizer one day. Eh @manu3d eh? eh? eh? :coffee:
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Bumping this for great justice! And for asking @Rostyslav Zatserkovnyi: Shouldn't this actually be in Core Projects since it isn't a module? :) Just realized. Also need moar docs :D
 
Top