This implements basic support for receiving updated data for resources from the editor and applying those updates to the local state. Currently this is only implemented for resources, however the same pattern can be easily implemented for components.
Split SyncResourceSystem into ReadResourceSystem and WriteResourceSystem.
Add functionality to SyncEditorSystem to read incoming update data and dispatch it to the corresponding WriteResourceSystem.
Add the requirement that registered resources be DeserializeOwned. We should add an API for registering read-only resources for when a resource only implements Serialize.
Make some tweaks to the pong example so that changes to the ScoreBoard resource show up more immediately (useful for demo purposes).
Lots of easy ways to improve this, but I'd rather get this merged in with the functionality as-is. I'll write up some tickets to track the remainder of the cleanup work, that way others can have a chance to contribute.
This implements basic support for receiving updated data for resources from the editor and applying those updates to the local state. Currently this is only implemented for resources, however the same pattern can be easily implemented for components.
SyncResourceSystem
intoReadResourceSystem
andWriteResourceSystem
.SyncEditorSystem
to read incoming update data and dispatch it to the correspondingWriteResourceSystem
.DeserializeOwned
. We should add an API for registering read-only resources for when a resource only implementsSerialize
.ScoreBoard
resource show up more immediately (useful for demo purposes).Lots of easy ways to improve this, but I'd rather get this merged in with the functionality as-is. I'll write up some tickets to track the remainder of the cleanup work, that way others can have a chance to contribute.