diff options
| author | Crozet Sébastien <developer@crozet.re> | 2020-12-31 16:30:38 +0100 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2020-12-31 16:30:38 +0100 |
| commit | 7b098606c230256c72b73291c15cbd5fabe02653 (patch) | |
| tree | 4d970a89860bbcc304b0f74832c3932ab094f797 /src/geometry | |
| parent | 1feac2e02d8779a1a03c9c16d5fbe4fd79c9324a (diff) | |
| download | rapier-7b098606c230256c72b73291c15cbd5fabe02653.tar.gz rapier-7b098606c230256c72b73291c15cbd5fabe02653.tar.bz2 rapier-7b098606c230256c72b73291c15cbd5fabe02653.zip | |
QueryPipeline: add shape casting, point projection, and intersection queries.
Diffstat (limited to 'src/geometry')
| -rw-r--r-- | src/geometry/mod.rs | 9 | ||||
| -rw-r--r-- | src/geometry/narrow_phase.rs | 7 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/geometry/mod.rs b/src/geometry/mod.rs index 2b6d14f..ac7e63b 100644 --- a/src/geometry/mod.rs +++ b/src/geometry/mod.rs @@ -86,6 +86,15 @@ pub(crate) use self::narrow_phase::ContactManifoldIndex; pub(crate) use cdl::partitioning::SimdQuadTree; pub use cdl::shape::*; +pub(crate) fn default_persistent_query_dispatcher( +) -> std::sync::Arc<dyn cdl::query::PersistentQueryDispatcher<ContactManifoldData, ContactData>> { + std::sync::Arc::new(cdl::query::DefaultQueryDispatcher) +} + +pub(crate) fn default_query_dispatcher() -> std::sync::Arc<dyn cdl::query::QueryDispatcher> { + std::sync::Arc::new(cdl::query::DefaultQueryDispatcher) +} + mod broad_phase_multi_sap; mod collider; mod collider_set; diff --git a/src/geometry/narrow_phase.rs b/src/geometry/narrow_phase.rs index fc6d5db..b94ce6f 100644 --- a/src/geometry/narrow_phase.rs +++ b/src/geometry/narrow_phase.rs @@ -38,7 +38,7 @@ impl ColliderGraphIndices { pub struct NarrowPhase { #[cfg_attr( feature = "serde-serialize", - serde(skip, default = "default_query_dispatcher") + serde(skip, default = "crate::geometry::default_persistent_query_dispatcher") )] query_dispatcher: Arc<dyn PersistentQueryDispatcher<ContactManifoldData, ContactData>>, contact_graph: InteractionGraph<ContactPair>, @@ -47,11 +47,6 @@ pub struct NarrowPhase { removed_colliders: Option<Subscription<RemovedCollider>>, } -fn default_query_dispatcher() -> Arc<dyn PersistentQueryDispatcher<ContactManifoldData, ContactData>> -{ - Arc::new(DefaultQueryDispatcher) -} - pub(crate) type ContactManifoldIndex = usize; impl NarrowPhase { |
