-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Serialization #1
Comments
I would be okay with implementing Serialize / Deserialize for specific types, but in my opinion a full serialization of a world with entities is just out of scope. I've implemented a serialization system in a pretty complex project that uses goggles, and naively trying to serialize every resource and every entity and every component breaks down really quickly. specs' serialization system was too simplistic and it was one of several parts of specs that I ended up just ignoring. Now that I think about it, I'm not even sure there are any types in goggles where implementing |
So for me it's the I am in the process of porting from my custom, messy, ECS to goggles so other things might pop-up, but until now it's just the |
I was thinking it might have been I'm sure there are different entity allocation strategies that might be more amenable to direct serialization, and if so, you can still use the rest of |
You're right :). |
First, thanks for doing this, It's a super useful crate.
What are your thoughts on having serialization/deserialization as part of goggles (maybe behind a feature flag) ?
It may go against the original design of having something that's as simple as possible.
Right now, it's possible to provide serialization / deserialization through serde's trick of implementing it for external types, but that's a bit of a hack as it involves relying on the internal structure of certain data types and duplicating it in another crate for the purpose of implementing the serialization.
https://serde.rs/remote-derive.html
I know you mentioned on reddit that you also have a minimal-ECS that's implemented on top of goggles, maybe that's a better place to integrate with serde.
The text was updated successfully, but these errors were encountered: