Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ackermann Chassis set_pose Disrupts Physics Simulation #412

Closed
Gamenot opened this issue Jan 13, 2021 · 2 comments
Closed

Ackermann Chassis set_pose Disrupts Physics Simulation #412

Gamenot opened this issue Jan 13, 2021 · 2 comments
Assignees

Comments

@Gamenot
Copy link
Collaborator

Gamenot commented Jan 13, 2021

set_pose() seems like a reasonable call but it will not work unless the vehicle chassis is a box model at current, and the Ackermann chassis is the standard for agents. This is a problem since the call in the Ackermann chassis goes down to bullet_client.resetBasePositionAndOrientation() which disrupts the bullet simulation and causes collision filtering artefacts.

The main issue here is that bullet_client.resetBasePositionAndOrientation() teleports the physics body rather than moving it. That body then has no velocity and has had no forces applied to it. So the teleported body cannot collide with another object unless that other object is moving towards it since collision requires the two bodies to have velocity towards the other.

Related: #400 (comment)_

@Gamenot Gamenot added this to the 0.5 milestone Jan 13, 2021
@Gamenot Gamenot self-assigned this Jan 13, 2021
@Gamenot Gamenot linked a pull request Jan 13, 2021 that will close this issue
@Gamenot Gamenot modified the milestones: 0.5, Backlog Jan 27, 2021
@Gamenot
Copy link
Collaborator Author

Gamenot commented Feb 3, 2021

Fixed by calling BoxChassis.control(<pose>, <speed>).

@Gamenot
Copy link
Collaborator Author

Gamenot commented Feb 3, 2021

#485 fixes the problem

@Gamenot Gamenot closed this as completed Feb 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants