specs-physics

[Fork] Integration of Amethyst, SPECS and Nphysics together.
git clone https://git.jojolepro.com/specs-physics.git
Log | Files | Refs | README | LICENSE

README.md (2553B)


      1 # specs-physics
      2 
      3 [![Build Status][bi]][bl] [![Crates.io][ci]][cl] ![MIT/Apache][li] [![Docs.rs][di]][dl]
      4 
      5 [bi]: https://travis-ci.com/bamling/specs-physics.svg?branch=master
      6 [bl]: https://travis-ci.com/bamling/specs-physics
      7 
      8 [ci]: https://img.shields.io/crates/v/specs-physics.svg
      9 [cl]: https://crates.io/crates/specs-physics/
     10 
     11 [li]: https://img.shields.io/crates/l/specs-physics.svg
     12 
     13 [di]: https://docs.rs/specs-physics/badge.svg
     14 [dl]: https://docs.rs/specs-physics/
     15 
     16 **specs-physics** aims to be an easily usable and extendable [nphysics](https://www.nphysics.org/) physics engine integration for applications and games that utilise the [Specs ECS](https://slide-rs.github.io/specs/).
     17 
     18 The dream is to *simply* create `Entity`s with a set of configurable `Component`s and have most of your physics covered, be it collision/proximity detection, velocity and acceleration or gravity.
     19 
     20 
     21 ### Examples
     22 
     23 Full examples can be found under [src/examples](https://github.com/bamling/specs-physics/tree/master/examples). If anything is missing or unclear, feel free to open an issue or give me a poke!
     24 
     25 ## Contributing 
     26 
     27 I'd appreciate any kind of contribution to this project, be it feature requests, bugs/issues, pull requests, documentation, tests or examples! 
     28 
     29 Please just try to format any code changes according to the [rustfmt.toml](https://github.com/bamling/specs-physics/blob/master/rustfmt.toml) rules. They're not exactly set in stone and I'm open for suggestions, but let's try to keep things tidy!
     30 
     31 ## Current Roadmap
     32 
     33 Full *TODO* sheet can be found in [this nphysics issue][todo]
     34 
     35 - [x] RigidBody Components
     36 - [x] Collider Components
     37 - [x] Proximity and Contact EventChannels
     38 - [x] External force property
     39 - [x] `log` based logging
     40 - [ ] Handling Body Activation & Sleeping
     41 - [ ] Multibody-based Component Joints
     42 - [ ] Force generator inversion of control
     43 - [ ] Time scale and simulation pausing
     44 
     45 Investigating:
     46 
     47 - [ ] Proximity & Curve-based external force utility
     48 - [ ] Constraint-based Joints
     49 - [ ] Kinematics
     50 
     51 [todo]: https://github.com/rustsim/nphysics/issues/149
     52 
     53 ## License
     54 
     55 Distributed under the MIT License. See [LICENSE](https://github.com/bamling/specs-physics/blob/master/LICENSE) for more information.
     56 
     57 ## Acknowledgments
     58 
     59 This project is heavily inspired by [nphysics-ecs-dumb](https://github.com/distransient/nphysics-ecs-dumb); they did most of the heavy lifting, I'm just building up on what they have started!
     60 
     61 **Special thanks to:**
     62 - [distransient](https://github.com/distransient)
     63 - [jojolepro](https://github.com/jojolepro)