diff options
| -rw-r--r-- | src/renderer/mod.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/renderer/mod.rs b/src/renderer/mod.rs index 364d000..a07bd5b 100644 --- a/src/renderer/mod.rs +++ b/src/renderer/mod.rs @@ -943,9 +943,23 @@ impl RendererState { && let Some(cells) = &entity.data.cells && let Some((pos, (cos, sin))) = entity.data._transform(&sim.rb_manager) { + // TODO access this better + let sleeping = sim + .rb_manager + .physics_manager + .world + .bodies + .get(entity.data.rb_h.unwrap()) + .unwrap() + .is_sleeping(); + entities += 1; instances.push(RendererInstance { - centre: pos.to_array(), + centre: if sleeping { + pos.round().to_array() + } else { + pos.to_array() + }, cos_sin: [cos, sin], half_size: (cells.size / 2).as_vec2().to_array(), dims: cells.size.as_uvec2().to_array(), |
