The current recommended and tested environment is Ubuntu 16.04 LTS. Theoretically, you can build on other distros and OSX as well, but we haven't tested it.
It's super simple: 1-2-3!
- Make sure you are registered with Epic Games. This is required to get source code access for Unreal Engine.
- Clone Unreal in your favorite folder and build it (this may take a while!). Note: We only support Unreal 4.17 at present.
# go to the folder where you clone GitHub projects git clone -b 4.17 https://github.com/EpicGames/UnrealEngine.git cd UnrealEngine # the Unreal build was broken a few times so we will get the commit that works git checkout af96417313a908b20621a443175ba91683c238c8 ./Setup.sh ./GenerateProjectFiles.sh make
- Clone AirSim and build it:
# go to the folder where you clone GitHub projects git clone https://github.com/Microsoft/AirSim.git cd AirSim ./setup.sh ./build.sh
A remote control is required if you want to fly manually. See the remote control setup for more details.
Alternatively, you can use APIs for programmatic control or use the so-called Computer Vision mode to move around using the keyboard.
Finally, you will need an Unreal project that hosts the environment for your vehicles. AirSim comes with a built-in "Blocks Environment" which you can use, or you can create your own. Please see setting up Unreal Environment.
- One of the major issues is this bug in Unreal. We have a workaround for some parts of the code but we haven't tested if everything is covered.
- Clicking the "End" button causes Unreal to crash.
- The report function (when you press R) also causes a crash because of the above reasons.
- We have seen some random crashes during the startup.
- You might get a warning that says that the AirSim plugin is incompatible, which you can ignore.
- Clicking the "End" button freezes the Unreal Editor. When this happens you will need to manually kill the process.
Go to the MyUnrealProject/Saved/Crashes
folder and search for the file MyProject.log
within its subdirectories. At the end of this file you will see the stack trace and messages. You can also take a look at the Diagnostics.txt
file.
You can use Qt Creator or CodeLite. Instructions for Qt Creator are available here.
Yes, you can, but we haven't tested it. You can find the instructions here.
We use the same compiler, Clang 3.9, and stdlib, libc++, that Unreal uses. AirSim's setup.sh
will automatically download them both. The libc++ source code is cloned into the llvm-source
folder and is built into the llvm-build
folder, from where CMake uses libc++.
Yes! The *.Build.cs
files are, however, no longer compatible (you will get a compile error). You can find files for 4.16 as *.Build.4.16.cs
so just rename those.
3.5.0 or higher. This should be the default in Ubuntu 16.04. You can check your CMake version using cmake --version
. If you have an older version, follow these instructions or see the CMake website.
Yes, however, you can't run Unreal from BashOnWindows. So this is kind of useful to check a Linux compile, but not for an end-to-end run. See the BashOnWindows install guide. Make sure to have the latest version (Windows 10 Creators Edition) as previous versions had various issues. Also, don't invoke bash
from Visual Studio Command Prompt
, otherwise CMake might find VC++ and try and use that!