Simulation of Aerial Robotics

December 3, 2025 · View on GitHub

Simulation is crucial when working with Unmanned Aerial Vehicles (UAVs). Testing different trajectories and control paradigms in a simulator before implementing them on the real platform ensures not only safety but also facilitates development.

This page presents several simulator options for aerial robotics enthusiasts.

Comparison

The following simulators have their own integrated physics simulation and basic rendering capabilities. They are capable of simulating the aerodynamic forces necessary to keep UAVs airborne:

For the following comparison, we have refered to this article:

C. A. Dimmig et al., "Survey of Simulators for Aerial Robots: An Overview and In-Depth Systematic Comparisons," in IEEE Robotics & Automation Magazine, doi: 10.1109/MRA.2024.3433171

The Arxiv prepint of the paper can be found here

Features

List migh not be complete. If you see any error or missing components, feel free to open a PR or issue.

NamePhysics EngineRenderingLinux1Windows1MacOS1Interface(S/H)ITL2Active3Hardware requirement4LicenceOpen source5Interest 6
Gazebo (
RotorS,
CrazyS,
PX4 SITL)
ODE/ Bullet/ DART/ SimbodyOGRE
( ✓

✓ )

( ✗

✗)

( ✗

✗ )
ROS 1/2, C++, RLPX4, ArduPilot, CF7
( ✗

✗ )
minimal/decentApache 2.0High
GazeboBullet/ DART/ TPEOGREROS 1/2, C++, Python, RLPX4, ArduPilot, CFminimal/decentApache 2.0High
Isaac (
Pegasus,
Aerial Gym)
NVIDIA PhysX/ FlexVulkanROS 1/2, Python, RLPegasus: PX4high/demandingNVIDIA OMNIVERSE
(BSD 3)

(✓
✓)
User specific
WebotsODEOpenGLROS 1/2, C/C++, Python, MATLAB, JavaArduPilot, CFdecent/highApache 2.0Developing
CoppeliaSimBullet/ODE/Vortex/Newton/MuJoCoOpenGLROS 1/2, C/C++, Python, MATLAB, Java,Lua,Octave--decent/highGNU GPL/CommercialDecent
AIRsimNVIDIA PhysXUnreal,UnityROS 1, C++, Python, C#, Java,RLPX4, ArduPilotmedium/highMITLow
FlightmareAd hoc, Gazebo classicUnityROS 1, C++, RL----MITLow
FlightGogglesAd hocUnityROS 1, C++Motion capture--MITUnknown
Gym-pybullet-dronesPybulletOpenGLPython, RLBetaflight, CFminimal/decent/highMIT (Pybullet: zlib)High
RotorTMAd hocOpenGLROS 1, Python, MATLAB----GNU GPLUnknown
MATLAB UAV ToolboxMATLABUnrealROS 2, MATLABPX4--Proprietary, CommercialUnknown
O3deNVIDIA PhysX/ NVIDIA Cloth/ AMD TressFXAtomROS 28 , C++unknowndecent/highApache-2.0/MITDeveloping
Drakead hocunknownC++, Python, ROS 2unknownunknownBSD 3Developing
FlightgearunknownunknownC++unknownminimal/decentGNU-GPLLow
RealFlightunknownunknown--unknownminimal/decentnon-publicLow
RotorPyad hocunknownPython--minimal/decentMITDeveloping
jMAVSimunkownJava3DJava, UDPPX4minimal/decentBSD-3Low

Vehicle types

SimulatorMultirotor (Basic)Multirotor (Drag)Multirotor (Wind)Fixed-wingsAerial ManipulatorsSwarmsCarsOther vehicles
Gazebo (Classic & New)
Isaac (Pegasus, Aerial Gym)✗(✓,✗)✓(✗,✗)✓(✗,✗)
Webots
CoppeliaSim
AirSim
Flightmare
FlightGoggles
gym-pybullet-drones
RotorTM
MATLAB UAV Toolbox
O3de*~?????~~
Drake*????????
RotorPy*~~~~
  • [ * ] : Unknown data. If you have information on specific topic, please comment bellow with the referance link.
    • [ ~ ] : Yes according to my knowledge but it needs development.
    • [ ? ] : Unknown
    • [ ✗ ] : No according to my research.
  • [ ✓ ] : Yes
  • [ ✱ ] : Yes. But not specifically designed for it
  • [ ✗ ] : No

Simulation tools

Sensor support

TODO

Flight dynamics models

Some simulators mostly focus on creating accurate dynamics for aerial vehicles. Here are some options:

Available UAV Models

Each simulator typically offers a range of ready-to-use aerial vehicle models:

Autopilot Suites

Several autopilot suites provide instructions for using simulators, often with Software-in-the-Loop (SITL) or Hardware-in-the-Loop (HITL) options:

Aerial Robotics Simulator lists

This page was last updated: {{ git_revision_date_localized }}

--8<-- "docs/goatcounter.html"

Footnotes

  1. ✓: Full support, ✱: Partial support, ✗: No support 2 3

  2. (Software/Hardware) In The Loop

  3. ✓: Active and maintained, ✱: Inactive but responding to issues/ PR, ✗: Inactive for 2+ years

  4. For a referance, a laptop running Intel i5 10th gen (or similar) with 8gb ddr4 ram and NVIDIA T100 4gb (or similar) are considered as minimal requirement.

  5. ✓: Yes, ✱: Yes for non commercial use-case , ✗: No

  6. Usage in Aerial ROS/Robotics community according to several survey on Discourse and during the meetings.

  7. Crazyflie

  8. It seem under development and there is some docs out there.