Crate rhusics_ecs

source ·
Expand description

Rhusics physics library

A physics library. Uses cgmath for all computation.

Features:

  • Two different broad phase collision detection implementations:
    • Brute force
    • Sweep and Prune
  • Narrow phase collision detection using GJK, and optionally EPA for full contact information
  • Functions for collision detection working on user supplied transform, and CollisionShape components. Can optionally use broad and/or narrow phase detection. Library supplies a transform implementation BodyPose for convenience.
  • Uses single precision as default, can be changed to double precision with the double feature.
  • Has support for doing spatial sort/collision detection using the collision-rs DBVT.
  • Support for doing broad phase using the collision-rs DBVT.
  • Has support for all primitives in collision-rs

Modules

Type wrappers and convenience functions for 2D collision detection
Type wrappers and convenience functions for 3D collision detection
2D physics ECS
3D physics ECS

Structs

Collision detection system for use with specs.
Do single contact, forward resolution.
Current frame update system.
Time step resource
Setup the next frames positions and velocities.
SystemData for easier creation of physical entities.
Collision detection system for use with specs.
Spatial sorting system for use with specs.

Enums

Error returned when physical entity setup fails

Traits

Adds physical entity builder functions to EntityBuilder

Functions

Create systems and add to a Dispatcher graph.