Module specs::saveload
[−]
[src]
Save and load entities from various formats with serde.
WorldSerialize
/ WorldDeserialize
This module provides two SystemData
implementors:
SerializeComponents
andDeserializeComponents
Reading those makes it very easy to serialize or deserialize components.
SerializeComponents
implements Serialize
and DeserializeComponents
implements
DeserializeOwned
, so serializing / deserializing should be very easy.
Markers
Because you usually don't want to serialize everything, we use
markers to say which entities we're interested in. However, these markers
aren't just boolean values; we also have id spaces which allow us
to identify entities even if local ids are different. The allocation
of these ids is what MarkerAllocator
s are responsible for. For an example,
see the docs for the Marker
trait.
Structs
EntityData |
A struct used for deserializing entity data. |
U64Marker |
Basic marker implementation usable for saving and loading |
U64MarkerAllocator |
Basic marker allocator |
Traits
DeserializeComponents |
A trait which allows to deserialize entities and their components. |
Marker |
This trait should be implemented by a component which is going to be used as marker.
This marker should be set to entity that should be serialized.
If serialization strategy needs to set marker to some entity
then it should use newly allocated marker from |
MarkerAllocator |
This allocator is used with the |
SerializeComponents |
A trait which allows to serialize entities and their components. |