QueryPipeline: add shape casting, point projection, and intersection queries.
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user