Ignition now supports a new physics engine - TPE, besides the default DARTsim, on both Citadel and Dome. TPE is developed in house by Open Robotics. The motivation is to focus on fast simulation of higher-order fleet dynamics without real physics and multi-machine synchronization.
Alongside this new physics engine development, Ignition Gazebo library also extended support for any custom physics engine with a set of minimum feature list implemented.
Some features TPE supports:
- model, link, collision(shape)
- Set model velocity vs. set force on joint (DARTSim)
- Nested models
- AABB tree powered collision detection
Features TPE does not support:
- Frame, joint
- kinematics other than position and velocity, like inertia, acceleration, inverse-kinematics solver and etc.
- dynamics like forces, mass, rigid/soft body, friction, constraint and etc.
Note: some of the features (performance benchmark points and AABB tree) are not released yet. Users will need to build from source to use them. Citadel is the recommended version with the most update to date changes.
If you would like to prototype a simulation world with a large number of entities up and running efficiently without any realistic physics effect, TPE is the perfect candidate. The source code of TPE can be found in both Citadel and Dome (Default) branches. More information on implementation details, feature comparisons and how to load custom engine can be found in our new tutorials below:
- Ignition Gazebo: How gazebo finds and loads physics engine
- Ignition Physics: Understanding physics plugin
Dartsim vs. TPE
|3000 shapes||Simulation Runner Step||Physics Update||Physics WorldForwardStep||Physics Update Sim||Physics Check Collisions||RTF ~500 iterations|
|9000 shapes||Simulation Runner Step||Physics Update||Physics WorldForwardStep||Physics Update Sim||Physics CheckCollisions||RTF ~500 iterations|
- TPE: 8.04GB ->13.4GB; DART: 8.04GB -> 13.7GB. ~300MB difference
Demos (using Citadel)
Velocity Control by TPE
ign gazebo velocity_control.sdf --physics-engine ignition-physics-tpe-plugin