Rolling test


Rolling test is for testing frictional contact behaviors. In this test, we simulated simple system of primitive ball and box shaped objects and investigated the trajectory of the objects.

The test focuses on:

  1. The quality of the friction cone (linear or elliptic)
  2. The accuracy of frictional contact simulation
  3. The speed of many primitive shaped objects simulation

Test scenario


The setup of the test is as follows:

Tested solver list

Note that ODE Dantzig solver fails when ERP is set to zero: the box goes into the ground as this video.


We investigated the speed-accuracy curve of each engines: how the accuracy of the fricitional contact simulation changes over the number of solver iteration.

As expected, the pushing force resulted in no motion in ODE and Dart that is due to their pyramid shaped friction cone. As the same size force is applied to y direction, the objects move.


MuJoCo has jittery trajectory that leads to the large error. This is due to the soft contact model of MuJoCo that has inherent constant vibrating motion. The objects oscillate significantly as the time step size increases.


Although RaiSim's accuracy is saturated by a numerical error of the solver, the error is negligible. Remarkably, Bullet performed exceptionally in terms of the accuracy of the solver.

Besides, RaiSim is notably fast than other for the simulation. Note that the following plot describes the speed of the simulation with default solver parameters.