robotology / gym-ignition

Framework for developing OpenAI Gym robotics environments simulated with Ignition Gazebo
https://robotology.github.io/gym-ignition
GNU Lesser General Public License v3.0
231 stars 26 forks source link

Restore feature parity of C++ and Python robot interfaces #65

Closed diegoferigo closed 4 years ago

diegoferigo commented 5 years ago

Due to a different pace of development and different requirements, the Python robot interfaces are now much more complete than the C++ interfaces.

As a reference, compare:

Ignition Gazebo still does not have all the components (in the sense of its ECM) to support all the features we defined in #33. Though, at least having the links and the base frame interfaces would be a positive move to start simulating floating-base robots.

Finalizing this task might be the right occasion to open an upstream PR in ign-gazebo proposing the inclusion of the missing components.


diegoferigo commented 4 years ago

The Robot Python class has been removed and replaced by a much improved SWIG interfacing of the new ScenarI/O bindings.

We managed to strip the extra Python layer of the Robot classes, at the cost that now new physics engines can only be implemented as ignition physics plugins. While this could be more difficult, it has the big advantage that we don't have to modify anything from the gym-ignition side and maintaining multiple engines becomes trivial.