Welcome to the CARLA documentation.
This home page contains an index with a brief description of the different sections in the documentation. Feel free to read in whatever order preferred. In any case, here are a few suggestions for newcomers.
- Install CARLA. Either follow the Quick start installation to get a CARLA release or make the build for a desired platform.
- Start using CARLA. The section titled First steps is an introduction to the most important concepts.
- Check the API. there is a handy Python API reference to look up the classes and methods available.
The CARLA forum is available to post any doubts or suggestions that may arise during the reading.
This documentation refers to CARLA 0.9.0 or later. To read about previous versions, check the stable branch.
— Make the build on Linux.
Windows build — Make the build on Windows.
Update CARLA — Get up to date with the latest content.
Build system — Learn about the build and how it is made.
Running in a Docker — Run CARLA using a container solution.
F.A.Q. — Some of the most frequent installation issues.
— Overview of the basic concepts in CARLA.
1st. World and client — Manage and access the simulation.
2nd. Actors and blueprints — Learn about actors and how to handle them.
3rd. Maps and navigation — Discover the different maps and how do vehicles move around.
4th. Sensors and data — Retrieve simulation data using sensors.
OpenDRIVE standalone mode
— Use any OpenDRIVE file as a CARLA map.
PTV-Vissim co-simulation — Run a synchronous simulation between CARLA and PTV-Vissim.
Recorder — Register the events in a simulation and play it again.
Rendering options — From quality settings to no-render or off-screen modes.
RSS sensor — An implementation of RSS in the CARLA client library.
SUMO co-simulation — Run a synchronous simulation between CARLA and SUMO.
Synchrony and time-step — Client-server communication and simulation time.
Traffic Manager — Simulate urban traffic by setting vehicles to autopilot mode.
Python API reference
— Classes and methods in the Python API.
Code recipes — Some code fragments commonly used.
Blueprint library — Blueprints provided to spawn actors.
C++ reference — Classes and methods in CARLA C++.
Recorder binary file format — Detailed explanation of the recorder file format.
Sensors reference — Everything about sensors and the data they retrieve.
ROS bridge installation
— The different ways to install the ROS bridge.
CARLA messages reference — Contains explanations and fields for every type of CARLA message available in ROS.
Launchfiles reference — Lists the launchfiles and nodes provided, and the topics being consumed and published.
Tutorials — General
Add friction triggers
— Define dynamic box triggers for wheels.
Control vehicle physics — Set runtime changes on a vehicle physics.
Control walker skeletons — Animate walkers using skeletons.
Retrieve simulation data — A step by step guide to properly gather data using the recorder.
Tutorials — Assets
Add a new map
— Create and ingest a new map.
Add a new vehicle — Prepare a vehicle to be used in CARLA.
Add new props — Import additional props into CARLA.
Create standalone packages — Generate and handle standalone packages for assets.
Map customization — Edit an existing map.
Material customization — Edit vehicle and building materials.
Vehicle modelling — Create a new vehicle for CARLA.
Tutorials — Developers
Contribute with new assets
— Add new content to CARLA.
Create a sensor — Develop a new sensor to be used in CARLA.
Make a release — For developers who want to publish a release.
Generate pedestrian navigation — Obtain the information needed for walkers to move around.
— The different ways to contribute to CARLA.
Code of conduct — Standard rights and duties for contributors.
Coding standard — Guidelines to write proper code.
Documentation standard — Guidelines to write proper documentation.