Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shipyard Rapier

Physics plugin with rapier for the shipyard ECS.

2D: Crates.io Documentation

3D: Crates.io Documentation

How to use

Setup the physics in the shipyard world:

let world = World::new();
world.run(setup_physics).unwrap();

Create an body and a collider component, add those to an existent entity, or create a new one:

let body = RigidBodyBuilder::new_dynamic().translation(x, y);
let collider = ColliderBuilder::cuboid(rad, rad).density(1.0);
all_storages.add_entity((body, collider));

In your gameplay loop, execute the physics systems to simulate the world:

// Create rapier colliders, bodies and joints based on the shipyard components.
world.run(create_body_and_collider_system).unwrap();
world.run(create_joints_system).unwrap();

// Step the world based on a frame rate.
let frame_time = 60.0 / 1000.0; // 60 fps simulation
world.run_with_data(step_world_system, frame_time).unwrap();

// Remove any physics components from deleted entities.
world.run(destroy_body_and_collider_system).unwrap();

This plugin is based of bevy_rapier plugin.

About

Physics plugin with rapier for the shipyard ECS.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages