Skip to content

Roadmap

SIGTRAP edited this page Sep 17, 2018 · 2 revisions

For now this is just an unordered list of features, tweak and miscellaneous work planned for SmartData. I make no guarantees on timescales or if any given feature will in fact ever be implemented. It's a wishlist at the moment.

Docs and Tutorials

This is the most important bit! There's a lot going on in SmartData and I feel the best way to get people up to speed is incremental tutorials which introduce features, techniques and use-cases smoothly. Docs also play into this of course.

SmartGraph Improvements

There are lots of little fixes and improvements planned for the graph. A selection:

  • Nicer zoom
  • Nicer auto-layout
  • Removal of the Refresh button in favour of smarter auto-refreshing so you don't have to worry about it!
  • Toggleable description field (possibly read and write)

A couple of bigger ones:

  • Show UnityEvents, their links and their invokations
  • Show more info on nodes - possibly as foldouts to keep things clean

Button to save value in play mode

Changes to SmartObject values don't (usually) persist outside Play mode. This is very much by design - in most cases you don't want your runtime code altering your default values! However, sometimes you'll be tweaking things at runtime to dial something in, and currently you have to remember the setting, exit Play mode and enter the value again. The plan is to have a button on the SmartObject inspector to serialize the current value to disk. Note that this is purely in-editor, and will not work as a save system in builds.

Drag-and-drop scene objects into SmartObjects at runtime

As noted in the FAQs And Known Issues Unity doesn't allow serialisation of scene Objects (i.e. UnityEngine.Object and derived classes) into ScriptableObjects. This is for very good reasons, but makes it a little harder to test/debug with SmartObjects in some cases. I'll be looking into workarounds.

Comments on SmartRefs

SmartObjects already have a description field to make notes in, but SmartRefs could do with one too. These comments would then be shown in the SmartObject's GameObject References panel and eventually (along with SmartObject descriptions) in the SmartGraph nodes.

SmartGroups

This is the big one, and it'll take a while. I probably won't even start on it until there's more real-world use case data for SmartData. It will aim to alleviate the difficulties with making SmartObjects at runtime and, more importantly, having a nice designer-friendly way to determine how things will hook up to them at runtime. It's easy to just create an instance in code, but currently difficult for designers to specify in-editor what will be interested in that instance. More on this later.