Recently I wrote about the idea to serialize channels as state
And right after that I realize that I can summarize my experience to the form of nodeset. It’s not only help me explain some of my ideas but also can be helpful for someone else.
The usage process is fairly straightforward, but requires some understanding of what is going on. First, we cannot use non-serializable values in the state.
Next, we need to create a ModelUtil node and use it to load our model. In the screenshot it is Cache, but it is better to load it in Create. The most appropriate type for this is Record. We can specify the name of the file with our configuration and what happens if the file is not loaded. We also have a wireless option to save and load the model to a file.
It is impossible not to mention the ability to load values from the model via Enum. This often makes patching very easy, but don’t be fooled, you will still have to sweat in most cases.
And there is a demostration how easy to use it with imgui:
It’s not too hard to implement change detection because of the Record type
As you may have noticed, the configuration is not only easy to read, but also editable in any editor.
I also left the application as an example
ModelUtils.zip (110.1 KB)