diff options
| author | Sébastien Crozet <sebcrozet@dimforge.com> | 2024-03-17 21:20:18 +0100 |
|---|---|---|
| committer | Sébastien Crozet <sebcrozet@dimforge.com> | 2024-03-17 21:24:28 +0100 |
| commit | ecd308338b189ab569816a38a03e3f8b89669dde (patch) | |
| tree | fa612abff2f23ea6a5ff04c64c07296d9fb065c8 /src/geometry/interaction_groups.rs | |
| parent | da92e5c2837b27433286cf0dd9d887fd44dda254 (diff) | |
| download | rapier-bevy-glam.tar.gz rapier-bevy-glam.tar.bz2 rapier-bevy-glam.zip | |
feat: start experimenting with a glam/bevy versionbevy-glam
Diffstat (limited to 'src/geometry/interaction_groups.rs')
| -rw-r--r-- | src/geometry/interaction_groups.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/geometry/interaction_groups.rs b/src/geometry/interaction_groups.rs index b07389c..6243ad9 100644 --- a/src/geometry/interaction_groups.rs +++ b/src/geometry/interaction_groups.rs @@ -1,5 +1,8 @@ #![allow(clippy::bad_bit_mask)] // Clippy will complain about the bitmasks due to Group::NONE being 0. +#[cfg(feature = "bevy")] +use bevy::prelude::{Component, Reflect, ReflectComponent}; + /// Pairwise filtering using bit masks. /// /// This filtering method is based on two 32-bit values: @@ -16,6 +19,7 @@ /// (self.memberships & rhs.filter) != 0 && (rhs.memberships & self.filter) != 0 /// ``` #[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] +#[cfg_attr(feature = "bevy", derive(Reflect), reflect(PartialEq))] #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)] #[repr(C)] pub struct InteractionGroups { @@ -80,6 +84,12 @@ use bitflags::bitflags; bitflags! { /// A bit mask identifying groups for interaction. #[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))] + #[cfg_attr( + feature = "bevy", + derive(Component, Reflect), + reflect(Component, Hash, PartialEq) + )] + #[derive(Default)] pub struct Group: u32 { /// The group n°1. const GROUP_1 = 1 << 0; |
