Project AirSim is a simulation platform for drones, robots, and other autonomous systems.
Building on the previous work of AirSim, it leverages Unreal Engine 5 to provide photo-realistic visuals, while providing the simulation framework needed to integrate custom physics, controllers, actuators, and sensors to develop an autonomous system.
IAMAI Simulations is composed of former engineers from the original AirSim project at Microsoft, who have decided to continue its development after Microsoft discontinued the project. With their expertise, the team is committed to advancing the platform and fostering innovation in autonomous systems.
Project AirSim consists of three main layers:
-
Project AirSim Sim Libs - Base infrastructure for defining a generic robot structure and simulation scene tick loop
-
Project AirSim Plugin - Host package (currently an Unreal Plugin) that builds on the sim libs to connect external components (controller, physics, rendering) at runtime that are specific to each configured robot-type scenario (ex. quadrotor drones)
-
Project AirSim Client Library - End-user library to enable API calls to interact with the robot and simulation over a network connection
For more details on the architecture, see Project AirSim Architecture Overview.
Project AirSim currently supports Windows 11 and Ubuntu 22. For more info about hardware specs for working with Project AirSim, see System Specifications.
We believe that open-source is the best way to foster innovation and collaboration in robotics simulation. Project AirSim can only thrive if it's built together — not by a single corporation, but by all of us.
We invite you to become part of this journey: contribute code, share feedback, report issues, and help shape the future of the platform.
IAMAI Simulations offers professional Enterprise Support for teams and organizations building on Project AirSim.
Whether you're working on large-scale simulations, custom features, or integration into your existing stack, we can help you move faster and with confidence.
To learn more, visit iamaisim.com.
Maintaining and improving a project of this scale requires significant effort and resources. If you or your organization benefit from Project AirSim, consider contributing by:
- Sharing feedback and reporting issues
- Contributing code or documentation
- Collaborating on new features
Your involvement helps us improve the platform and foster a thriving community.
We believe that collaboration is key to building a thriving ecosystem around Project AirSim. Join our growing community to share ideas, ask questions, and collaborate with other developers and enthusiasts:
- Discord: Connect with us on our official Discord server for real-time discussions, support, and updates. Join here.
- GitHub Discussions: Participate in discussions, share feedback, and contribute to shaping the future of Project AirSim. Start a discussion.
We look forward to hearing from you and building the future of autonomous systems together!
For a complete list of changes, view our Changelog.
Our project's roadmap and future direction are defined through GitHub issues and discussions. Issues or discussions labeled roadmap or need help outline planned features and areas where community contributions are encouraged. We invite you to participate and help shape the future of Project AirSim.
See Installing system prerequisites for information about Windows/Linux system setup needed before running Project AirSim.
I just want to download and run a Project AirSim environment and drive it with some Python code.
Note: You can either build Project AirSim from source or download pre-built binaries to use with the Python client.
I'm going to build the sim libs, Plugin, Blocks, and my own UE project environment from the ground up so I can customize it to my application.
Follow these steps to set up and run Project AirSim from source:
- Download and install Unreal Engine 5.2.
- Set the
UE_ROOTenvironment variable to the Unreal Engine installation path:export UE_ROOT=/path/to/UnrealEngine
- Run the setup script to install required development tools:
./setup_linux_dev_tools.sh
- Build the simulation libraries in debug mode:
- Linux/macOS:
./build.sh simlibs_debug
- Windows (use "x64 Native Tools Command Prompt for VS 2022"):
build.cmd simlibs_debug
- Linux/macOS:
- Generate Visual Studio Code project files:
- Linux/macOS:
./blocks_genprojfiles_vscode.sh
- Windows:
blocks_genprojfiles_vscode.bat
- Linux/macOS:
- Open the generated workspace in Visual Studio Code.
- Launch the Unreal Engine editor in DebugGame mode.
Once the editor is running, you can explore and interact with the simulation environment.
If you need to run a Project AirSim simulation on a headless system, such as in a Docker container, you can enable off-screen rendering by adding the -RenderOffScreen argument when launching the Unreal environment executable:
Blocks{.exe/.sh} -RenderOffScreen
If you are running without GPU access and want to run without any image rendering, you can disable rendering completely by adding the -nullrhi argument:
Blocks{.exe/.sh} -nullrhi
These arguments can also be used while debugging in VS Code by modifying the launch.json file, or in Visual Studio 2022 by modifying the project's Configuration Properties. See Running Headless (Docker, Azure Cloud) for more details.
See Transitioning from AirSim for guidance on converting an AirSim Unreal environment and client code from AirSim to Project AirSim.
Please see the License page for Project AirSim license information.
Copyright (C) Microsoft Corporation.
Copyright (C) 2025 IAMAI CONSULTING CORP
MIT License
