aboutsummaryrefslogtreecommitdiff
path: root/src_testbed
diff options
context:
space:
mode:
authorCrozet Sébastien <developer@crozet.re>2020-11-19 18:09:55 +0100
committerCrozet Sébastien <developer@crozet.re>2020-11-19 18:13:39 +0100
commit5ce36065829cdc23334bbb6ca6c0d83f7de1ece8 (patch)
tree15f28da171147c4ff3aee27c4f9b8cd6f59dd07c /src_testbed
parent49fd861083a0b6055ac8b9ea7aa69b9207b2c030 (diff)
downloadrapier-5ce36065829cdc23334bbb6ca6c0d83f7de1ece8.tar.gz
rapier-5ce36065829cdc23334bbb6ca6c0d83f7de1ece8.tar.bz2
rapier-5ce36065829cdc23334bbb6ca6c0d83f7de1ece8.zip
Add explicit wake_up parameter to method setting the position and velocity of a rigid-body.
Diffstat (limited to 'src_testbed')
-rw-r--r--src_testbed/box2d_backend.rs10
-rw-r--r--src_testbed/nphysics_backend.rs4
-rw-r--r--src_testbed/physx_backend.rs4
-rw-r--r--src_testbed/testbed.rs4
4 files changed, 11 insertions, 11 deletions
diff --git a/src_testbed/box2d_backend.rs b/src_testbed/box2d_backend.rs
index 213819a..0d0664f 100644
--- a/src_testbed/box2d_backend.rs
+++ b/src_testbed/box2d_backend.rs
@@ -71,10 +71,10 @@ impl Box2dWorld {
let def = b2::BodyDef {
body_type,
- position: na_vec_to_b2_vec(body.position.translation.vector),
- angle: body.position.rotation.angle(),
- linear_velocity: na_vec_to_b2_vec(body.linvel),
- angular_velocity: body.angvel,
+ position: na_vec_to_b2_vec(body.position().translation.vector),
+ angle: body.position().rotation.angle(),
+ linear_velocity: na_vec_to_b2_vec(*body.linvel()),
+ angular_velocity: body.angvel(),
linear_damping,
angular_damping,
..b2::BodyDef::new()
@@ -223,7 +223,7 @@ impl Box2dWorld {
if let Some(pb2_handle) = self.rapier2box2d.get(&handle) {
let b2_body = self.world.body(*pb2_handle);
let pos = b2_transform_to_na_isometry(b2_body.transform().clone());
- body.set_position(pos);
+ body.set_position(pos, false);
for coll_handle in body.colliders() {
let collider = &mut colliders[*coll_handle];
diff --git a/src_testbed/nphysics_backend.rs b/src_testbed/nphysics_backend.rs
index 2896377..0ef3d36 100644
--- a/src_testbed/nphysics_backend.rs
+++ b/src_testbed/nphysics_backend.rs
@@ -46,7 +46,7 @@ impl NPhysicsWorld {
for (rapier_handle, rb) in bodies.iter() {
// let material = physics.create_material(rb.collider.friction, rb.collider.friction, 0.0);
- let nphysics_rb = RigidBodyDesc::new().position(rb.position).build();
+ let nphysics_rb = RigidBodyDesc::new().position(*rb.position()).build();
let nphysics_rb_handle = nphysics_bodies.insert(nphysics_rb);
rapier2nphysics.insert(rapier_handle, nphysics_rb_handle);
@@ -161,7 +161,7 @@ impl NPhysicsWorld {
let mut rb = bodies.get_mut(*rapier_handle).unwrap();
let ra = self.bodies.rigid_body(*nphysics_handle).unwrap();
let pos = *ra.position();
- rb.set_position(pos);
+ rb.set_position(pos, false);
for coll_handle in rb.colliders() {
let collider = &mut colliders[*coll_handle];
diff --git a/src_testbed/physx_backend.rs b/src_testbed/physx_backend.rs
index 74d6af2..7fcb813 100644
--- a/src_testbed/physx_backend.rs
+++ b/src_testbed/physx_backend.rs
@@ -154,7 +154,7 @@ impl PhysxWorld {
use physx::rigid_static::RigidStatic;
use physx::transform;
- let pos = transform::gl_to_px_tf(rb.position.to_homogeneous().into_glam());
+ let pos = transform::gl_to_px_tf(rb.position().to_homogeneous().into_glam());
if rb.is_dynamic() {
let actor = unsafe {
physx_sys::PxPhysics_createRigidDynamic_mut(physics.get_raw_mut(), &pos)
@@ -406,7 +406,7 @@ impl PhysxWorld {
let ra = self.scene.get_rigid_actor(*physx_handle).unwrap();
let pos = ra.get_global_pose().into_na();
let iso = na::convert_unchecked(pos);
- rb.set_position(iso);
+ rb.set_position(iso, false);
if rb.is_kinematic() {}
diff --git a/src_testbed/testbed.rs b/src_testbed/testbed.rs
index 4b998c3..1e0dd5e 100644
--- a/src_testbed/testbed.rs
+++ b/src_testbed/testbed.rs
@@ -414,7 +414,7 @@ impl Testbed {
{
if self.state.selected_backend == BOX2D_BACKEND {
self.box2d = Some(Box2dWorld::from_rapier(
- self.gravity,
+ self.physics.gravity,
&self.physics.bodies,
&self.physics.colliders,
&self.physics.joints,
@@ -647,7 +647,7 @@ impl Testbed {
if self.state.selected_backend == BOX2D_BACKEND {
self.box2d.as_mut().unwrap().step(
&mut self.physics.pipeline.counters,
- &self.integration_parameters,
+ &self.physics.integration_parameters,
);
self.box2d.as_mut().unwrap().sync(
&mut self.physics.bodies,