Trait rhusics_ecs::WithRigidBody [] [src]

pub trait WithRigidBody {
    fn with_dynamic_rigid_body<P, Y, R, V, A, I, B>(
        self,
        shape: CollisionShape<P, BodyPose<P::Point, R>, B, Y>,
        pose: BodyPose<P::Point, R>,
        velocity: Velocity<V, A>,
        body: RigidBody<V::Scalar>,
        mass: Mass<V::Scalar, I>
    ) -> Self
    where
        P: Primitive + Send + Sync + 'static,
        B: Bound<Point = P::Point> + Send + Sync + 'static,
        P::Point: EuclideanSpace<Scalar = V::Scalar> + Send + Sync + 'static,
        V::Scalar: BaseFloat + Send + Sync + 'static,
        R: Rotation<P::Point> + Send + Sync + 'static,
        V: VectorSpace + Zero + Clone + Send + Sync + 'static,
        A: Copy + Zero + Clone + Send + Sync + 'static,
        Y: Send + Sync + 'static,
        I: Send + Sync + 'static
;
fn with_static_rigid_body<S, P, Y, R, I, B>(
        self,
        shape: CollisionShape<P, BodyPose<P::Point, R>, B, Y>,
        pose: BodyPose<P::Point, R>,
        body: RigidBody<S>,
        mass: Mass<S, I>
    ) -> Self
    where
        S: BaseFloat + Send + Sync + 'static,
        P: Primitive + Send + Sync + 'static,
        B: Bound<Point = P::Point> + Send + Sync + 'static,
        P::Point: EuclideanSpace<Scalar = S> + Send + Sync + 'static,
        R: Rotation<P::Point> + Send + Sync + 'static,
        Y: Send + Sync + 'static,
        I: Send + Sync + 'static
; }

Adds rigid body builder functions to EntityBuilder

Required Methods

Add dynamic rigid body components to entity

Type parameters:

  • P: Collision Primitive
  • Y: Collider
  • R: Rotational quantity
  • V: Vector
  • A: Angular velocity
  • I: Inertia
  • B: Bounding volume

Add static rigid body components to entity

Type parameters:

  • S: Scalar (f32 or f64)
  • P: Collision Primitive
  • Y: Collider
  • R: Rotational quantity
  • I: Inertia
  • B: Bounding volume

Implementations on Foreign Types

impl<'a> WithRigidBody for EntityBuilder<'a>
[src]

[src]

[src]

Implementors