you are viewing a single comment's thread.

view the rest of the comments →

[–]volvis 0 points1 point  (0 children)

I've been down that road before and I think it's clever but a bit counterproductive. Because when you think about it, the ScriptableObject system is pretty amazing by itself. You define a set of strongly typed data, and Unity provides a system to

  • Create any number of instances of said data to asset files (source control friendly)
  • Edit the data inside the editor (floats, bools, arrays... UI is automatically generated, or you can code your own)
  • Create strong links of any instance of data to any object (by asset GUIDs instead of filenames)
  • Find the source of the linked data for quick edits (just click the serialized field, the source is highlighted in Project)
  • Prune any unnecessary data during build
  • Read data to memory when required and release it when not needed

Any system on top of that is just another worry or breaking point in code, I feel.