-
Notifications
You must be signed in to change notification settings - Fork 417
Custom (Additional) Save format for Runtime #43
Comments
** Removed off-topic node creation discussion ** |
New update: I'm finally working on this:) The goal is to allow fast and easy implementation of own formats, even for custom databases. So as with most systems, it is fully modular, just extend the ImportExportFormat base class and program the IO routines:) Also, you can easily add an interface if you need, say, special access to a custom database to import/export to. No big deal, just a few lines of code in the format declaration itself. Also, the NodeCanvas is optionally served in a seperate, linked and structured data format which makes it easier to interface with alot of formats like XML. It removes the need for caring about unique IDs, linking and also finding custom node variable data. So, in the end, most work is lifted off the actual format-specific implementation. As with many systems in the framework, it only needs a single additional class to implement a custom data format, be it as complex as you want:) I'll finish the custom knob system #74 first though because of the obvious structural changes it comes with. Don't want to modify the format right after implementing it:) As always, feedback appreciated. |
Finished this part aswell, import system is now fully functional with an XML format as a base:) |
- Implemented modular IO system for custom formats - Added XML IO format using that system (theoretically working at runtime to save canvas between sessions) - Specify custom format location through Selector or GUI - Allows for custom database access and similar for import/export - Option between extending ImportExportFormat or StructuredImportExportFormat when implementing custom formats - Structured adds a layer of abstraction on the Canvas Data easier for file-based formats - Handles IDs, Serialized Fields, Creation and Access of the complex NodeCanvas structure
This too is finally merged and committed, would love to hear your feedback:) |
Alright, seems to run fine now:) |
Description: Current save format, ScriptableObjects, cannot be created and saved at runtime nor saved externally. So, a new save file format for runtime is needed. It should be optional for the Editor but essential for Runtime.
Maybe Binary, but more likely XML, just like Substance's .sbs.
State: None. Along with it there should be an attribute-based tagging system for extra variables that need to be saved in each Node/NodeKnob subtype. The rest is hardcoded as it is known what to save, obviously.
Please notify me before working on this to discuss some details:)
The text was updated successfully, but these errors were encountered: