diff options
| author | Crozet Sébastien <developer@crozet.re> | 2020-10-05 16:51:32 +0200 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2020-10-05 16:51:32 +0200 |
| commit | bbfe926a11fdf4f4eb0ddbac0c777a202e07d269 (patch) | |
| tree | 2dcf09a166718535da9ec449aa196cf4b48db465 /src | |
| parent | d8dfd864a453a9ead60f970549b2d289d7025364 (diff) | |
| download | rapier-bbfe926a11fdf4f4eb0ddbac0c777a202e07d269.tar.gz rapier-bbfe926a11fdf4f4eb0ddbac0c777a202e07d269.tar.bz2 rapier-bbfe926a11fdf4f4eb0ddbac0c777a202e07d269.zip | |
Make the WQuadtree serializable.
Diffstat (limited to 'src')
| -rw-r--r-- | src/geometry/wquadtree.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/geometry/wquadtree.rs b/src/geometry/wquadtree.rs index 01b2092..17ecffe 100644 --- a/src/geometry/wquadtree.rs +++ b/src/geometry/wquadtree.rs @@ -8,6 +8,7 @@ use std::collections::VecDeque; use std::ops::Range; #[derive(Copy, Clone, Debug, PartialEq, Eq)] +#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] struct NodeIndex { index: u32, // Index of the addressed node in the `nodes` array. lane: u8, // SIMD lane of the addressed node. @@ -27,6 +28,7 @@ impl NodeIndex { } #[derive(Copy, Clone, Debug)] +#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] struct WQuadtreeNode { waabb: WAABB, // Index of the nodes of the 4 nodes represented by self. @@ -38,6 +40,7 @@ struct WQuadtreeNode { } #[derive(Copy, Clone, Debug, PartialEq, Eq)] +#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] struct WQuadtreeProxy { node: NodeIndex, handle: ColliderHandle, // The collider handle. TODO: only set the collider generation here? @@ -52,6 +55,7 @@ impl WQuadtreeProxy { } } +#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] pub struct WQuadtree { nodes: Vec<WQuadtreeNode>, dirty_nodes: VecDeque<u32>, |
