Feature comparison#

A list of features present in Gazebo-classic version 11 and the status of their migration to Ignition Citadel.

All the issues below are labeled with close the gap on GitHub.

Sensors#

Sensor

Gazebo-classic

Gazebo Sim

Air pressure

Altimeter

Bounding Box camera

✕ (available from Fortress)

Camera

Contact sensor

Depth camera

Force-torque

✕ (available from Fortress)

GPS / NavSat

✕ (available from Fortress)

GPU Ray

✓ Renamed to GPU Lidar

IMU

Logical camera

Magnetometer

Multi-camera

✕ Use individual cameras with same update rate

Ray

Issue

RFID sensor and tag

Issue

RGBD camera

Segmentation camera

✕ (available from Fortress)

Sonar

Issue

Thermal camera

Triggered camera

✕ (available from Fortress)

Wide-angle camera

✕ (available from Garden)

Wireless

Issue

Sensor features

Gazebo-classic

Gazebo Sim

Custom update rate

Gaussian noise

Custom sensors

✕ (available from Fortress)

Laser retroreflection

Camera distortion

✕ (available from Fortress)

Performance metrics

SDF Features#

Feature

Gazebo-classic

Gazebo Sim

SDF frame semantics

SDF parametrization

✕ (available from Dome)

Load models from local files

Closed kinematic chains

Issue

Nested models

Partial support, fully available from Edifice

Populations

Issue

Actors

Markers

Heightmaps

✕ (Ogre 1 from Edifice, Ogre 2 from Fortress)

DEM (Digital Elevation Models)

✕ (available from Garden)

Polylines

World plugins

✓ Now called System plugin

Model plugins

✓ Now called System plugin

Sensor plugins

✓ Now called System plugin

Visual plugins

✕ (available from Fortress)

GUI plugins

✓ Ignition GUI plugins and Gazebo GUI systems

System plugins

✓ Through Ignition Launch

Plugins#

Model plugins#

Plugin

Gazebo-classic

Gazebo Sim

ActorPlugin

✕ See FollowActor for a demo of Actor APIs

ActuatorPlugin

ArduCopterPlugin

AttachLightPlugin

✕ Does not apply, use SDF

Breadcrumbs

BuoyancyPlugin

CartDemoPlugin

CessnaPlugin

DiffDrivePlugin

ElevatorPlugin

FlashLightPlugin

FollowerPlugin

GimbalSmall2dPlugin

GravityCompensationPlugin

HarnessPlugin

HydraDemoPlugin

InitialVelocityPlugin

✕ (available from Edifice)

JointControlPlugin

✓ (force / pos / vel, from SDF)

✓ (vel, from msg)

JointStatePublisher

JointTrajectoryPlugin

KeysToCmdVelPlugin

Use ignition::gui::KeyPublisher with ignition::gazebo::systems::TriggeredPublisher

KeysToJointsPlugin

Use ignition::gui::KeyPublisher with ignition::gazebo::systems::TriggeredPublisher

LedPlugin

LiftDragPlugin

LinearBatteryConsumerPlugin

LinearBatteryPlugin

LinkPlot3DPlugin

✓ (renamed to Plot3D)

MudPlugin

MulticopterMotorModel

PlaneDemoPlugin

PosePublisher

RandomVelocityPlugin

RegionEventBoxPlugin

SimpleTrackedVehiclePlugin

SkidSteerDrivePlugin

SphereAtlasDemoPlugin

TouchPlugin

TrackedVehiclePlugin

VariableGearboxPlugin

VehiclePlugin

WheelSlipPlugin

WheelTrackedVehiclePlugin

KineticEnergyMonitor

Buoyancy engine

✕ (available from Fortress)

World plugins#

Plugin

Gazebo-classic

Gazebo Sim

ArrangePlugin

ContainPlugin

Partial port, Issue

HydraPlugin

JoyPlugin

✓ Migrated as an Ignition Launch plugin

MisalignmentPlugin

RubblePlugin

StaticMapPlugin

TransporterPlugin

WindPlugin

Sensor plugins#

Plugin

Gazebo-classic

Gazebo Sim

BreakableJointPlugin

CameraPlugin

Issue

ContactPlugin

DepthCameraPlugin

Issue

FiducialCameraPlugin

ForceTorquePlugin

Issue

GpuRayPlugin

Issue

ImuSensorPlugin

Issue

LensFlareSensorPlugin

PressurePlugin

RayPlugin

Issue

RaySensorNoisePlugin

✕ Use SDF

SonarPlugin

Issue

Visual plugins#

Plugin

Gazebo-classic

Gazebo Sim

AmbientOcclusionVisualPlugin

BlinkVisualPlugin

HeightmapLODPlugin

ShaderParamVisualPlugin

✕ (available from Fortress)

GUI plugins#

Plugin

Gazebo-classic

Gazebo Sim

CessnaGUIPlugin

KeyboardGUIPlugin

ignition::gui::KeyPublisher

LookAtDemoPlugin

TimerGUIPlugin

System plugins#

Plugin

Gazebo-classic

Gazebo Sim

ModelPropShop

✕ (available from Edifice)

RestUiPlugin

RestWebPlugin

StopWorldPlugin

GUI#

Feature

Gazebo-classic

Gazebo Sim

Play / pause / step

Reset world / models

Issue

World stats

Topic echo

Image viewer

Translate / rotate

Scale models

Issue

Insert models from Fuel

Partial support

Insert models from disk

Insert simple shapes

Insert simple lights

✕ (available from Edifice)

Delete models

World tree

Scene properties

Issue

Log recording / playback

Plotting

✕ (available from Dome)

Video recording

Screenshot

View angles

Apply force / torque

Visualize as transparent

✕ (available from Fortress)

Visualize as wireframe

✕ (available from Fortress)

Visualize joints

✕ (available from Fortress)

Visualize collisions

Visualize inertia

✕ (available from Fortress)

Visualize CoM

✕ (available from Fortress)

Visualize contacts

✕ (available from Dome)

Visualize lights

✕ (available from Edifice)

Follow / move to

Copy / paste

✕ (available from Fortress)

Building editor

Model editor

Issues

FPS view control

Orthographic projection

✕ (available from Fortress)

Undo / redo

Issue

Save world

Save GUI configuration

Color scheme and themes

Position, resize and configure widgets

Load GUI plugins from menu

Edit model pose

Edit light properties

✕ (available from Dome)

Edit physics properties

✕ (available from Dome)

Physics#

In Ignition Physics, physics engines are integrated as plugins, so any engine can be integrated without changing the core source code, as it was the case in Gazebo.

Feature

Gazebo-classic

Gazebo Sim

ODE engine

Issue

Bullet engine

✕ (available from Dome)

DART engine

✓ Plugin shipped with ign-physics

Simbody engine

Issue

TPE engine

Custom engine plugins

Collide bitmasks

Restitution coefficient

Collision detector

✕ (available from Edifice)

Solver

✕ (available from Edifice)

Rendering#

In Ignition Rendering, render engines are integrated as plugins, so any engine can be integrated without changing the core source code.

Feature

Gazebo-classic

Gazebo Sim

Ogre 1.x engine

Ogre 2.x engine

Optix engine

✓ Partial support

Custom engine plugins

Sky

✕ (available from Edifice)

Fog

Material scripts

✓ (Ogre 1.x scripts)

Does not apply

Physically Based Rendering (PBR)

✓ (with engines that support it, like Ogre 2)

Normal maps

Environment maps

Lightmaps

✕ (available from Edifice)

Particle effects

✕ (available from Dome)

Render order

✕ (available from Edifice)

ROS integration#

ROS integration through the ros_ign packages.

Supported versions:

  • ROS 1 Melodic (from source) / Noetic (binaries)

  • ROS 2 Foxy (binaries)

Platforms#

Platform

Gazebo-classic

Gazebo Sim

Ubuntu

OSX

Most of the stack works, outstanding issues: command line, render window

Windows

The stack works up to ign-gazebo: Issue

Others#

Feature

Gazebo-classic

Gazebo Sim

Nested models

✕ (available from Edifice)

Log / playback

Web client (GzWeb)

COLLADA meshes

OBJ meshes

STL meshes

USD meshes

✕ (available from Fortress)

Code introspection

All simulation state is accessible from system plugins or through the SceneBroadcaster’s state topic

Distribute simulation across processes

(coming up)

Incrementally load levels

Online model database

gazebo_models repository

Ignition Fuel

Saved simulation states

Issue

Sphere, cylinder and box primitives

Ellipsoid and capsule primitives

✕ (available from Edifice)

Hydrodynamics

✕ (available from Edifice)

Ocean currents

✕ (available from Edifice)

Test fixture

Spherical coordinates

✕ (available from Fortress)

Generic comms system

✕ (available from Fortress)