parent_shift and body_shift seem to have no effect on MultiBodies with a FreeJoint
- Dominant language
- Rust
- Stars
- 1.6k
- Forks
- 120
- PR merge metrics
- No merged PRs in 30d
Description
Consider this program:
```rust
let mut world = World::new();
let shape = ShapeHandle::new(Cuboid::new(Vector3::repeat(0.5)));
let collider = ColliderDesc::new(shape)
.density(1.0);
let top_joint = FreeJoint::new(Isometry3::identity());
let body_desc = MultibodyDesc::new(top_joint)
.collider(&collider)
.parent_shift(Vector3::repeat(1000.0))
.build(&mut world);
Testbed::new(world).run()
```
When running this program I notice that the cube is still suspiciously close to the global origin. Considering that the `parent_shift` should shift it by 1000 units on each axis, I would expect the cube to be visibly moved or probably even completely out of sight, but no such thing happens and the cube seems to remain comfortably seated at the coordinate origin.
When I use a `PrismaticJoint` instead of a `FreeJoint`, the cube is nowhere to be found, as expected. So this seems to be some kind of special behaviour that only affects `FreeJoint`s, but I didn't see such behaviour mentioned anywhere in the documentation, so I guess this is a bug.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.