summaryrefslogtreecommitdiff
path: root/src/sim/rb_manager/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/sim/rb_manager/mod.rs')
-rw-r--r--src/sim/rb_manager/mod.rs13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/sim/rb_manager/mod.rs b/src/sim/rb_manager/mod.rs
index 1a2abbf..36893b5 100644
--- a/src/sim/rb_manager/mod.rs
+++ b/src/sim/rb_manager/mod.rs
@@ -29,7 +29,7 @@ pub struct PhysicsManager {
impl PhysicsManager {
pub fn new() -> Self {
let mut world = PhysicsWorld::new();
- let gravity = vec2(0.0, 9.81);
+ let gravity = vec2(0.0, 9.81 * CELLS_TO_METRES);
world.gravity = gravity;
world.integration_parameters = IntegrationParameters {
// 20 pixels <-> 1 meter
@@ -95,9 +95,7 @@ impl RbManager {
continue;
}
for i in 0..p {
- vertices.push(
- (poly[i as usize] - (marchable.size().as_vec2() - 1.0) / 2.0) / CELLS_TO_METRES,
- );
+ vertices.push(poly[i as usize] - (marchable.size().as_vec2() - 1.0) / 2.0);
indices.push([v + i, v + (i + 1) % p]);
}
}
@@ -129,12 +127,11 @@ impl RbManager {
pub fn upsert_chunk_collider(&mut self, cx: i32, cy: i32, chunk: &Chunk) {
puffin::profile_function!();
- let collider = RbManager::polyline_collider_from_marchable(chunk, Some(20)).translation(
- vec2(
+ let collider =
+ RbManager::polyline_collider_from_marchable(chunk, Some(20)).translation(vec2(
(cx as f32 + 0.5) * CHUNK_SIZE as f32,
(cy as f32 + 0.5) * CHUNK_SIZE as f32,
- ) / CELLS_TO_METRES,
- );
+ ));
if let Some(handle) = self.chunk_colliders.remove(&(cx, cy)) {
self.physics_manager.world.remove_collider(handle);