CARLA is an open-source simulator for autonomous driving research.

Overview

CARLA Simulator

Build Status Documentation

carla.org download documentation forum discord

CARLA is an open-source simulator for autonomous driving research. CARLA has been developed from the ground up to support development, training, and validation of autonomous driving systems. In addition to open-source code and protocols, CARLA provides open digital assets (urban layouts, buildings, vehicles) that were created for this purpose and can be used freely. The simulation platform supports flexible specification of sensor suites and environmental conditions.

CARLA Video

If you want to benchmark your model in the same conditions as in our CoRL’17 paper, check out Benchmarking.

Recommended system

  • Intel i7 gen 9th - 11th / Intel i9 gen 9th - 11th / AMD ryzen 7 / AMD ryzen 9
  • +16 GB RAM memory
  • NVIDIA RTX 2070 / NVIDIA RTX 2080 / NVIDIA RTX 3070, NVIDIA RTX 3080
  • Ubuntu 18.04

CARLA Ecosystem

Repositories associated to the CARLA simulation platform:

Like what you see? Star us on GitHub to support the project!

Paper

If you use CARLA, please cite our CoRL’17 paper.

CARLA: An Open Urban Driving Simulator
Alexey Dosovitskiy, German Ros, Felipe Codevilla, Antonio Lopez, Vladlen Koltun; PMLR 78:1-16 [PDF] [talk]

@inproceedings{Dosovitskiy17,
  title = {{CARLA}: {An} Open Urban Driving Simulator},
  author = {Alexey Dosovitskiy and German Ros and Felipe Codevilla and Antonio Lopez and Vladlen Koltun},
  booktitle = {Proceedings of the 1st Annual Conference on Robot Learning},
  pages = {1--16},
  year = {2017}
}

Building CARLA

Use git clone or download the project from this page. Note that the master branch contains the most recent release of CARLA with the latest fixes and features.

Then follow the instruction at How to build on Linux or How to build on Windows.
The Linux build needs for an UE patch to solve some visualization issues regarding Vulkan. Those already working with a Linux build should install the patch and make the UE build again using the following commands.

# Download and install the UE patch  
cd ~/UnrealEngine_4.24
wget https://carla-releases.s3.eu-west-3.amazonaws.com/Linux/UE_Patch/430667-13636743-patch.txt ~/430667-13636743-patch.txt
patch --strip=4 < ~/430667-13636743-patch.txt
# Build UE
./Setup.sh && ./GenerateProjectFiles.sh && make

Unfortunately we don't have official instructions to build on Mac yet, please check the progress at issue #150.

Contributing

Please take a look at our Contribution guidelines.

F.A.Q.

If you run into problems, check our FAQ.

CARLA Talks

The team creates some additional content for users, besides the docs. This is a great way to cover different subjects such as detailed explanations for a specific module, latest improvements in a feature, future work and much more.

CARLA Talks 2020 (May):

  • General
  • Modules
  • Features
    • Co-Simulations with SUMO and PTV-Vissim — video | slides
    • Integration of RSS-lib — slides
    • The External Sensor Interface (ESI) — video | slides
    • The OpenDRIVE Standalone Mode — video | slides

Licenses

CARLA licenses

CARLA specific code is distributed under MIT License.

CARLA specific assets are distributed under CC-BY License.

CARLA Dependency and Integration licenses

The ad-rss-lib library compiled and linked by the RSS Integration build variant introduces LGPL-2.1-only License.

Unreal Engine 4 follows its own license terms.

CARLA uses three dependencies as part of the SUMO integration:

CARLA uses one dependency as part of the Chrono integration:

CARLA uses the Autodesk FBX SDK for converting FBX to OBJ in the import process of maps. This step is optional, and the SDK is located here

This software contains Autodesk® FBX® code developed by Autodesk, Inc. Copyright 2020 Autodesk, Inc. All rights, reserved. Such code is provided "as is" and Autodesk, Inc. disclaims any and all warranties, whether express or implied, including without limitation the implied warranties of merchantability, fitness for a particular purpose or non-infringement of third party rights. In no event shall Autodesk, Inc. be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of such code."

Comments
  • Building on Windows 0.9.X

    Building on Windows 0.9.X

    These instructions are outdated, please follow How to build CARLA on Windows.


    New automated instructions

    Make sure you have:

    Unreal Engine 4.19
    Visual Studio 2017 (as default version, if not set it)
    
    Windows SDK 10 (should be installed with VS2017)
    Windows SDK 8.1 (select it when you install VS2017 or after)
    
    make
    cmake
    python 3 (x64)
    

    For more information about how to set up the Visual Studio 2017 and all it's components in order to build a project have a look at Unreal Engine Visual Studio setup

    Compilation errors (C2440 or C2672)

    If you also have installed other version of Visual Studio or Microsoft Compiler and get any error during the build as C2440 or C2672 this is probably because is not using the 2017 compiler, so try first to uninstall the other ones and rebuild again.

    If you would like to keep the other version of Visual Studio edit %appdata%\Unreal Engine\UnrealBuildTool\BuildConfiguration.xml and <path_to_unreal_engine_installation>\UE_4.19\Engine\Saved\UnrealBuildTool\BuildConfiguration.xml adding the following lines under Configuration tag:

    <VCProjectFileGenerator>
        <Version>VisualStudio2017</Version>
    </VCProjectFileGenerator>
    
    <WindowsPlatform>
        <Compiler>VisualStudio2017</Compiler>
    </WindowsPlatform>
    

    Unreal Engine 4.19 not detected

    No information has been written in the Windows registry, try to reinstall Unreal or take a look at the next post.

    Carla instructions example:

    1) git clone https://github.com/carla-simulator/carla.git
    
    2) Download https://drive.google.com/uc?id=1FtC00CrDb7Kz5StBAwb6vqOGbzZtpROx&export=download
    3) Extract in Unreal/CarlaUE4/Content/Carla
    
    4) make launch
    

    Before posting in this issue:

    • Search for similar comments (just a quick ctrl+F search).
    • Make sure you use the correct Unreal Engine version.

    If your questions satisfy the previous points, we will be glad to answer them. :grimacing:

    Discord

    Consider join our discord channel for a further talk. We have a Windows specific channel. discord


    Manual build

    Follow the instructions from 1 to 4, at this point, double-clicking on Unreal/CarlaUE4/CarlaUE4.uproject should work. A warning about Carla plugin being not compatible appears sometimes, it’s an Unreal’s bug and can be ignored, press no to disable Carla plugin. Then press yes when asked to compile the missing modules.

    If that doesn’t work, you can open the project with Visual Studio. Right click the CarlaUE4.uproject and select Generate Visual Studio Project Files. Then open the Visual Studio solution it generates (*.sln). Hopefully this will give some hints on what fails.


    PS: If you are coming from an open issue related with the build please make reference to it

    help wanted backlog build system on hold 
    opened by iFuSiiOnzZ 149
  • Building on Windows 0.8.X

    Building on Windows 0.8.X

    This issue have changed alot since it was opened. Take your time to investigate ;)

    New and automated instructions

    Now exists an automated way to use and modify CARLA in Windows! Take a look into our documentation: HOW TO BUILD ON WINDOWS

    Before posting in this issue:

    • Make sure you have readed the documentation.
    • Search for similar comments (just a quick ctrl+F search).
    • Make sure you use the correct Unreal Engine version.

    If your questions satisfy the previous points, we will be glad to answer them. :grimacing:

    Discord

    Consider join our discord channel for a further talk. We have a Windows specific channel. discord


    Old instructions

    @yocabon provided some great PowerShell scripts: Win64BuildScripts.zip.

    We are working for adding these scripts to CARLA. Please comment if you have any trouble using them.


    Directions for building on Windows (not automated)

    Install Unreal Engine 4.17 and Visual Studio 2015. (Later versions of Visual Studio work too).

    Some Linux utilities are required (like make, cmake, rm…), it is best if you have some Linux environment like Cygwin installed.

    The dependencies should be built and installed under "Util/Build" folder as follows

    Util/
      Build/
        boost-install/
        protobuf-install/
    
    Build CarlaServer

    Open a cmd.exe in the root folder of CARLA. Setup the environment calling vcvarsall.bat. If you have Visual Studio 2015 you can call it with (don’t forget the amd64 at the end)

    $ "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
    

    Then just run make and should work

    $ make
    

    If everything goes well, CarlaServer should have been installed under "Unreal/CarlaUE4/Plugins/Carla/CarlaServer".

    Build and launch CARLAUE4

    At this point, double-clicking on "Unreal/CarlaUE4/CarlaUE4.uproject" should work. A warning about Carla plugin being not compatible appears sometimes, it’s an Unreal’s bug and can be ignored, press "no" to disable Carla plugin. Then press yes when asked to compile the missing modules.

    If that doesn’t work, you can open the project with Visual Studio. Right click the "CarlaUE4.uproject" and select "Generate Visual Studio Project Files". Then open the Visual Studio solution it generates (*.sln). Hopefully this will give some hints on what fails.

    feature request help wanted in progress backlog build system 
    opened by nsubiron 100
  • Steering wheel joystick with Carla

    Steering wheel joystick with Carla

    Hi, Has anyone successfully managed to set up (and calibrate) a steering wheel and brake joystick (like the Logitech Driving Force GT for example) with Carla?

    I'm trying to set one up right now and would like to learn of any pitfalls.

    question stale 
    opened by sandman 60
  • weird 2D bounding boxes

    weird 2D bounding boxes

    I projected and got the 2D bounding boxes as shown in the figure below. The weird thing is that some of the bounding boxes do not wrap the pedestrians or the vehicles well, for example the female pedestrian at the bottom left position. Anybody knows why this happens? Thanks.

    123456

    backlog python ue4 support 
    opened by danxuhk 50
  • Carlar Simlator:The principle of IMU

    Carlar Simlator:The principle of IMU

    Hi,

    I've recently been learning the source code of IMU in Carla.Some formulas are used in the process of calculating the results of accelerometer, gyroscope, and compass outputs.Without understanding the principles of IMU simulation, just learning the code made me feel very confused。 So, can you provide me with the papers or books that you refer to when you design IMU simulations? Thank you!

    opened by BoldArro1 43
  • Logitech g29 steering issue

    Logitech g29 steering issue

    Hi , Im using logitech g29 steering wheel and using maual_control_steeringwheel.py from carla release. The problem i face is , steering is calibrated to range of 540 and i see this issue shown in the image. The steering value is extremely high and it goes past the mximum range steering in both directions.

    please help me on this regard Steering_mismatch Steering_mismatch_1

    stale 
    opened by aravindSwamy94 41
  • [0.9.1] [Linux] Map customization instructions

    [0.9.1] [Linux] Map customization instructions

    Hello everyone, I just build a new carla 0.9.1 build from source. Now I would like to customize my own map. I got also a licence for Roadrunner. What I have now to do after I lunched the CarleUE4 project? In the docs and in github I read something about duplicating a map and the CarlaMapGenerator. How can I duplicate the map inside the editor and what i have exactly to do with the CarlaMapGenerator. I found the C++ class but i also read something about clicking "Trigger Road Map Generation". The C++ class is just grey and i can only open it with visual code. But how can I use the Generator like i read?

    I hope someone could give a much more detailed instruction. A short tutorial video would be awesome.

    question stale 
    opened by rikMaz 39
  • [0.9.1] build error on ubuntu 16.04

    [0.9.1] build error on ubuntu 16.04

    0.9.1 has many more excellent features. Brilliant work! When I try to build 0.9.1 on ubuntu 16.04. I got some errors. here is the build log. any suggestions?

    BuildPythonAPI.sh: Building Python API for Python 2. compiling:

    • source/libcarla/libcarla.cpp running bdist_egg running egg_info writing source/carla.egg-info/PKG-INFO writing top-level names to source/carla.egg-info/top_level.txt writing dependency_links to source/carla.egg-info/dependency_links.txt reading manifest file 'source/carla.egg-info/SOURCES.txt' writing manifest file 'source/carla.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py running build_ext building 'carla.libcarla' extension clang-5.0 -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Idependencies/include -I/usr/lib/gcc/x86_64-linux-gnu/7/include -I/usr/include/python2.7 -c source/libcarla/libcarla.cpp -o build/temp.linux-x86_64-2.7/source/libcarla/libcarla.o -fPIC -std=c++14 -Wno-missing-braces -DBOOST_ERROR_CODE_HEADER_ONLY -DLIBCARLA_WITH_PYTHON_SUPPORT -DLIBCARLA_ENABLE_LIFETIME_PROFILER -DLIBCARLA_IMAGE_WITH_PNG_SUPPORT=true In file included from source/libcarla/libcarla.cpp:130: In file included from source/libcarla/SensorData.cpp:9: In file included from dependencies/include/carla/image/ImageIO.h:9: In file included from dependencies/include/carla/image/ImageIOConfig.h:50: In file included from dependencies/include/boost/gil/extension/io/png_io.hpp:35: In file included from /usr/include/png.h:321: /usr/include/pngconf.h:383:12: error: unknown type name '__pngconf' pngconf.h in libpng already includes setjmp.h; ^ /usr/include/pngconf.h:383:21: error: cannot use dot operator on a type pngconf.h in libpng already includes setjmp.h; ^ /usr/include/pngconf.h:384:12: error: unknown type name 'dont' dont include it again.; ^ /usr/include/pngconf.h:384:28: error: expected ';' after top level declarator dont include it again.; ^ 4 errors generated. error: command 'clang-5.0' failed with exit status 1 Util/BuildTools/Linux.mk:65: recipe for target 'PythonAPI' failed
    stale 
    opened by hdy117 34
  • Invalid pixelmap or window parameter

    Invalid pixelmap or window parameter

    Hi! I'm using 0.9.6 and I always get the same error: Disabling core dumps. X Error of failed request: BadDrawable (invalid Pixmap or Window parameter) Major opcode of failed request: 149 () Minor opcode of failed request: 4 Resource id in failed request: 0x3e00041 Serial number of failed request: 361 Current serial number in output stream: 367 Signal 11 caught. Segmentation fault (core dumped)

    I don't know what caused this problem.

    stale 
    opened by humbleEwan 29
  • [0.9.6] Make pedestrians cross streets

    [0.9.6] Make pedestrians cross streets

    Hi Carla team!

    Is there any way to make the pedestrians in 0.9.6 cross the roads in a similar fashion as in 0.8? Using the default controller right now only make them walk on the sidewalks,

    Thanks!

    backlog 
    opened by dotchen 29
  • RuntimeError: time-out of 2000ms while waiting for the simulator, make sure the simulator is ready and connected to 127.0.0.1:2000

    RuntimeError: time-out of 2000ms while waiting for the simulator, make sure the simulator is ready and connected to 127.0.0.1:2000

    Hello, I'm getting this error while running the python API in CARLA. I tried changing time-out duration as well as port number, but still the same issue. Please help

    stale 
    opened by akshatamk 28
  • Fix typo in updating lateral controller

    Fix typo in updating lateral controller

    Description

    Fix typo in updating lateral controller

    Fixes #6037

    Where has this been tested?

    • Platform(s): Ubuntu 20.04
    • Python version(s): 3.8
    • Unreal Engine version(s): CARLA's

    This change is Reviewable

    opened by apgeorg 1
  • Question about set_desired_speed

    Question about set_desired_speed

    CARLA version: latest Platform/OS: Windows Problem you have experienced: set_desired_speed in the traffic manager doesn't work, the NPC simply freezes. What you expected to happen: / Steps to reproduce: /

    opened by icerooqiu 0
  • Drift of pedestrian when spawning large number of pedestrians

    Drift of pedestrian when spawning large number of pedestrians

    CARLA version: 0.9.13 Platform/OS: Ubuntu 22.04.1 LTS GPU: GeForce RTX 2080 Ti

    I am trying to spawn crowd scene so I spawned lots of pedestrians in a small place with their bounding boxes and used a RGB camera to save the frames . However, some pedestrian teleport to somewhere next to them (like suddenly fly in the air or drift to another position) in several frames and get back to the normal trajectories. And when the problem occurs, the bounding boxes are still follow the normal trajectories. I used synchronous mode and a "while True" loop to save the frames. I've tried to add "time.sleep()" at the end of each loop, but it did't work. I'm wondering that if there's any solutions can solve this problem, or it's just due to the GPU? Thanks a lot.

    opened by LeoHuang0511 1
  • CARLA Server in CI Pipeline

    CARLA Server in CI Pipeline

    Hello everyone,

    I want to use CARLA in a GitLab CI pipeline for testing some own implemented functions. This requires a running CARLA Server.

    The CI Job is based on a Docker Image with CARLA installed as well as containing my application. When starting the CARLA server (with RenderOffScreen flag) and "&" flag (for background activity), the server stops when executing a second command to launch my application.

    Has anyone experience with CARLA in CI pipeline context or in general with multiple parallel processes in CI pipelines?

    Here is my job definition from the gitlab-ci.yml file:

    testing:carla:
      stage: Testing
      image: $image_carla_interface:ci  # this image contains carla and all other stuff
      script:
        - bash /home/user/carla/setup.sh
        - source /home/user/carla/setup.sh
        - echo "Starting CARLA server"
        - /home/user/carla/CarlaUE4/Binaries/Linux/CarlaUE4-Linux-Shipping CarlaUE4 vulkan -nosound -RenderOffScreen &
        - python /builds/carla/carla-interface/carla_examples/test.py
    

    Thanks for your support or ideas!

    opened by christiangeller 0
  • Unreal Engine Version 4.26.2 Crashes Upon Project Creation

    Unreal Engine Version 4.26.2 Crashes Upon Project Creation

    Hello, I am following the guide in the link below to build carla 0.9.13 for windows: https://carla.readthedocs.io/en/0.9.13/build_windows/

    I have a Windows 10 PC with a NVIDIA Geforce RTX 2060 graphics card. I followed all the steps listed in the document above and cloned Unreal Engine from the following address (cloning from this address gives me UE_4.26.2): https://github.com/CarlaUnreal/UnrealEngine.git

    I ran the Setup.bat and GenerateProjectFiles.bat scripts successfully. I opened up UE4.sln with Microsoft Visual Studio 2019 and selected the ‘Development Editor’, ‘Win64’ and ‘UnrealBuildTool’ options. I built the UE4 solution successfully.

    Now that everything is complete, when I run UE4Editor.exe I can create a new project. But when the project opens, the editor suddenly crashes with the following message:

    Fatal error: [File:C:/Users/123/Downloads/ue4/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp] [Line: 907] Rendering thread exception: Assertion failed: ResourceTableFrameCounter == INDEX_NONE [File:C:/Users/123/Downloads/ue4/Engine/Source/Runtime/Windows/D3D11RHI/Private/D3D11Texture.cpp] [Line: 2260]

    0x00007ff8c1bccd29 KERNELBASE.dll!UnknownFunction [] 0x00007ff85e3cac76 UE4Editor-Core.dll!ReportAssert() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1616] 0x00007ff85e3ce428 UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Windows\WindowsErrorOutputDevice.cpp:78] 0x00007ff85e0df31d UE4Editor-Core.dll!FOutputDevice::LogfImpl() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:61] 0x00007ff85e075b55 UE4Editor-Core.dll!AssertFailedImplV() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:104] 0x00007ff85e077bf0 UE4Editor-Core.dll!FDebug::CheckVerifyFailedImpl() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:461] 0x00007ff8437397bf UE4Editor-D3D11RHI.dll!FD3D11DynamicRHI::RHIUpdateTextureReference() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Windows\D3D11RHI\Private\D3D11Texture.cpp:2260] 0x00007ff85f70a6a2 UE4Editor-RHI.dll!FRHICommandListImmediate::UpdateTextureReference() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\RHI\Private\RHICommandList.cpp:2730] 0x00007ff84d86dac1 UE4Editor-Engine.dll!FStreamableTextureResource::InitRHI() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Engine\Private\Rendering\StreamableTextureResource.cpp:183] 0x00007ff8600632cb UE4Editor-RenderCore.dll!FRenderResource::InitResource() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\RenderCore\Private\RenderResource.cpp:102] 0x00007ff8600bc65f UE4Editor-RenderCore.dll!TEnqueueUniqueRenderCommandType<BeginInitResource'::2’::InitCommandName,<lambda_62eddc873155d85469e17b1ba3893b43> >::DoTask() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\RenderCore\Public\RenderingThread.h:183] 0x00007ff8600cd4b0 UE4Editor-RenderCore.dll!TGraphTask<TEnqueueUniqueRenderCommandType<BeginInitResource'::2’::InitCommandName,<lambda_62eddc873155d85469e17b1ba3893b43> > >::ExecuteTask() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:886] 0x00007ff85de8e3b4 UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:709] 0x00007ff85de8e7be UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:601] 0x00007ff8600eb532 UE4Editor-RenderCore.dll!RenderingThreadMain() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:373] 0x00007ff8600f3c04 UE4Editor-RenderCore.dll!FRenderingThread::Run() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:509] 0x00007ff85e3e69bb UE4Editor-Core.dll!FRunnableThreadWin::Run() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:86] 0x00007ff85e3df680 UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() [C:\Users\123\Downloads\ue4\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:35] 0x00007ff8c3477614 KERNEL32.DLL!UnknownFunction [] 0x00007ff8c45026a1 ntdll.dll!UnknownFunction []

    1. I have tried rebuilding the solution multiple times with different options, including the "UE4" option.
    2. I installed the latest NVIDIA graphics driver (studio version).

    Any help would be much appreciated. Thanks in advance.

    opened by doom6461 0
Releases(0.9.14)
  • 0.9.14(Dec 24, 2022)

    Release 0.9.14

    Changes

    • Fixed bug in FrictionTrigger causing sometimes server segfault
    • Added attachment type "SpringArmGhost" for cinematic cameras but without doing the collision test.
    • Improved algorithm to move signals out of the road by computing the desired displacement direction.
    • Added TrafficManager.vehicle_lane_offset(actor, offset) and TrafficManager.global_lane_offset(offset) methods.
    • Some of the warnings shown when building a map will now only be showing when debugging.
    • The ids for semantic segmentation has been modified to be the same as cityscapes (labels, ids and colors)
    • Fixed bug causing traffic signals at the end points of a road to sometimes create malformed waypoints.
    • Fixed pedestrian skeleton frame, where sometimes it was draw displaced from the body
    • Fixed decals when importing maps. It was using other .json files found in other packages.
    • In multi-GPU mode some sensors now are forced to be created on the primary server always (ex. collision sensor)
    • Added the speed limits for 100, 110 and 120 Km/h.
    • Fixing sensor destruction, now the stream and socket is succesfully destroyed.
    • Fixed bug at Vehicle.get_traffic_light_state() and Vehicle.is_at_traffic_light() causing vehicles to temporarily not lose the information of a traffic light if they moved away from it before it turned green.
    • Changed the height of the automatic spawn points, from 3m to only 0.5m
    • Added pedestrian skeleton to the recorder, as additional data. They will replay with the exact pose.
    • Added multi-GPU feature. Now several servers (with dedicated GPU) can render sensors for the same simulation.
    • Fixed bug causing the Vehicle.get_traffic_light_state() function not notify about the green to yellow and yellow to red light state changes.
    • Fixed bug causing the Vehicle.is_at_traffic_light() function to return false if the traffic light was green.
    • Fixed bug causing the scene lights to return an incorrect location at large maps.
    • Fixed bug causing the world.ground_projection() function to return an incorrect location at large maps.
    • Added failure state to vehicles, which can be retrieved by using Vehicle.get_failure_state(). Only Rollover failure state is currently supported.
    • Fixed bug causing the TM to block the simulation when a vehicle with no physics was teleported.
    • Fixed bug causing the TM to block the simulation when travelling through a short roads that looped on themselves.
    • Improved the TM's handling of non signalized junctions, resulting in a more fluid overall behavior.
    • Added check to avoid adding procedural trigger boxes inside intersections.
    • Python agents now accept a carla.Map and GlobalRoutePlanner instances as inputs, avoiding the need to recompute them.
    • Python agents now have a function to lane change.
    • Python agents now detect vehicle in adjacent lanes if invaded due to the offset.
    • Fixed bug causing the python agents to sometimes not detect a blocking actor if there were severral actors around it.
    • Improved Python agents performance for large maps.
    • Fix a bug at Map.get_topology(), causing lanes with no successors to not be part of it.
    • Added new ConstantVelocityAgent
    • Added new parameter to the TrafficManager, set_desired_speed, to set a vehicle's speed.
    • Added 4 new attributes to all vehicles:
      • base_type can be use as a vehicle classification. The possible values are car, truck, van, motorcycle and bycicle.
      • special_type provides more information about the vehicle. It is currently restricted to electric, emergency and taxi, and not all vehicles have this attribute filled.
      • has_dynamics_doors can either be true or false depending on whether or not the vehicle has doors that can be opened using the API.
      • has_lights works in the same way as has_dynamic_doors, but differentiates between vehicles with lights, and those that don't.
    • Added native ackermann controller:
      • apply_ackermann_control: to apply an ackermann control command to a vehicle
      • get_ackermann_controller_settings: to get the last ackermann controller settings applied
      • apply_ackermann_controller_settings: to apply new ackermann controller settings
    • Fixed bug causing the Traffic Manager to not be deterministic when using hybrid mode
    • Added NormalsSensor, a new sensor with normals information
    • Added support for N wheeled vehicles
    • Added support for new batch commands ConsoleCommand, ApplyLocation (to actor), SetTrafficLightState
    • Added new API function: set_day_night_cycle at the LightManager, to (de)activate the automatic switch of the lights when the simulation changes from day to night mode, and viceversa.
    • Switch to boost::variant2 for rpc::Command as that allows more than 20 RPC commands
    • Added post process effects for rainy and dusty weathers.
    • Switched data type of the dust storm weather parameter from bool to float.
    • Check for the version of the installed Clang compiler during build.
    • Added API function to get direct access to the GBuffer textures of a sensor:
      • listen_to_gbuffer: to set a callback for a specific GBuffer texture
    Source code(tar.gz)
    Source code(zip)
  • 0.9.13(Nov 16, 2021)

    Release 0.9.13

    Changes

    • Added new instance aware semantic segmentation sensor sensor.camera.instance_segmentation
    • Added new API classes: MaterialParameter, TextureColor and TextureFloatColor to encode texture data and field (normal map, diffuse, etc)
    • Added new API functions: apply_color_texture_to_object, apply_float_color_texture_to_object and apply_textures_to_object to paint objects in runtime
    • Added the option for users to set a route using RoadOption elements to a vehicle controlled by the Traffic Manager.
    • Cache now has an extra folder with current version of CARLA (so different cache per version)
    • Added set_percentage_random_left_lanechange and set_percentage_random_right_lanechange.
    • Improved handling of collisions in Traffic Manager when driving at very high speeds.
    • Added physical simulation to vehicle doors, capable of opening and closing
    • Added open/close doors feature for vehicles.
    • Added API functions to 3D vectors: squared_length, length, make_unit_vector, dot, dot_2d, distance, distance_2d, distance_squared, distance_squared_2d, get_vector_angle
    • Added API functions to 2D vectors: squared_length, length, make_unit_vector
    • Added a seed for better reproducibility of pedestrians
      • New API function set_pedestrians_seed
      • New parameter --seedw in generate_traffic.py script
    • Added missing dependency libomp5 to Release.Dockerfile
    • Added API functions to interact with pedestrian bones:
      • get_bones / set_bones: to get/set the bones of a pedestrian
      • blend_pose: to blend a custom pose with current animation
      • show_pose / hide_pose: to show or hide the custom pose
      • get_pose_from_animation: to set the custom pose with the animation current frame
    • Added a new script in PythonAPI/examples/draw_skeleton.py to draw the bones of a pedestrian from client side
    • Improved collision detection of the Python agents
    • Added the new VehicleLightStage to the Traffic Manager to dynamically update the vehicle lights.
    • Added two new examples to PythonAPI/util: Conversion of OpenStreetMaps to OpenDRIVE maps osm_to_xodr.py and Extraction of map spawn points extract_spawn_points.py
    • Fixed the import of props without any map
    • Fixed global route planner crash when being used at maps without lane markings
    • Fixed bug causing the server to sigsegv when a vehicle collides an environment object in recording mode.
    • Fixed RSSSensor: made client side calculations threaded
    • Fixed keep_right_rule parameter.
    Source code(tar.gz)
    Source code(zip)
  • 0.9.12(Aug 3, 2021)

    Release 0.9.12

    Changes

    • Upgrading to Unreal Engine 4.26
    • CARLA now is built with Visual Studio 2019 in Windows
    • Added Optical Flow camera
    • Changed the resolution of the cached map in Traffic Manager from 0.1 to 5 meters
    • Added generation attribute to vehicles and pedestrians
    • Added Lincoln 2020 vehicle dimensions for CarSim integration
    • Enabling the no_delay option to RPC and stream sockets
    • CARLA is compatible with the last RoadRunner nomenclature for road assets
    • The special nomenclature to define roads (ROAD_ROAD), sidewalks (ROAD_SIDEWALK)... can be at any position of the asset name
    • Improved performance benchmark script: sync, map and sensor selection, ...
    • Improved performance, destroyed PhysX state for vehicles when physics are disabled
    • Improved parallelism of raycast sensors in system with large number of cores
    • Improved manual_control: now cameras position are set in relation with car size
    • Added 'visualize_multiple_sensors' example
    • Added 'check_lidar_bb' util script
    • Added optional flag to client.replay_file() replay_sensors to enable or disable the replaying the sensors
    • Client required files are sent from the server to a local cache (OpenDRIVE, Traffic Manager...)
    • Extended make import process for applying road painter materials (carla art tool)
    • Added creation of custom JSON file for applying decals to imported roads
    • Added CHRONO library for vehicle dynamics simulation (https://projectchrono.org/)
      • Supported JSON vehicle definition
      • Unsupported collision dynamics
    • Added Large Map feature to CARLA, alowing to import large maps divided in square tiles (at most 2kmx2km per tile). Only section of a Large Map can be loaded at a time which introduces a sleep state for actors that are far away from the hero vehicle
    • Added performance benchmarking section to documentation
    • Added ApplyVehiclePhysicsControl to commands
    • Added flush in the sublevel loading to increase carla's determinism in Opt maps
    • Fixed import sumo_integration module from other scripts
    • Fixed bug causing the RoadOptions at the BehaviorAgent to not work as intended
    • Fixed a bug when importing a FBX map with some _ in the FBX name
    • Fix bug in carla.Transform.get_up_vector()
    • Fix bug in lidar channel point count
    • Fix imu: some weird cases were given nan values
    • Fix bugs in apply_physics_control and friction trigger
    • Exposed tire parameters for longitudinal and lateral stiffness in the PhysicsControl.
    • When setting a global plan at the LocalPlanner, it is now optional to stop the automatic fill of the waypoint buffer
    • Improved agent's vehicle detection to also take into account the actor bounding boxes
    • API extensions:
      • Added functions to traffic light actor get_effect_waypoints(), get_light_boxes() and get_opendrive_id()
      • Added functions to world get_traffic_lights_from_waypoint(), get_traffic_lights_in_junction and get_traffic_light_from_opendrive_id
      • Added parameters to WorldSettings: tile_stream_distance and actor_active_distance
      • Added parameters and functions to Osm2OdrSettings: proj_string, center_map, generate_traffic_lights, all_junctions_with_traffic_lights, set_osm_way_types, and set_traffic_light_excluded_way_types
      • Added function to enable car telemetry
      • Added set_wheel_steer_direction() function to change the bone angle of each wheel of a vehicle
      • Added get_wheel_steer_angle() function to get the steer angle of a vehicle wheel
      • Added scattering_intensity , mie_scattering_scale , rayleigh_scattering_scale to PythonAPI for changing weather attributes
      • Improved the python agents API. Old behaviors have been improved and new ones have also been added, improving the functionalities of the agents. Several bugs have also been fixed
    Source code(tar.gz)
    Source code(zip)
  • 0.9.11(Dec 23, 2020)

    Release 0.9.11

    Changes

    • Improved the documentation for use with pandoc tool by converting html tags to their markdown equivalent
    • Refactored FAQ section of docs to use minimal html and fix broken layout
    • Extended the local planner with a lateral offset
    • Upgraded to DirectX 12 on Windows
    • Added the new core pipeline for the simulator
    • Added parameter to carla settings to control culling
    • Added fully deterministic option for Traffic Manager, sorting vehicles by ID and avoiding race conditions
    • Added the option to sweep the wheel shape for collision. This requires to patch the engine
    • Added the possibility of changing physics substepping options from client
    • Added 'noise_seed' to sensors to initialize the random generators
    • API extensions:
      • Added actor.set_enable_gravity() function to enable/disable the gravity affecting the actor
      • Added load_map_layer and unload_map_layer to control map layers on new maps that support subleveling
      • Added get_environment_objectscall to get all the placed objects in the level
      • Added enable_environment_objectscall to enable/disable objects of the level
      • Added horizontal_fov parameter to lidar sensor to allow for restriction of its field of view
      • Added WorldSettings.deterministic_ragdolls to enable deterministic or physically based ragdolls
    • Fixed RSSSensor python3 build and import of open drive maps by updating to ad-rss v4.2.0 and ad-map-access v2.3.0.
    • Python import of dependent 'ad' python modules reflects now the namespaces of the C++ interface and follow doxygen documentation
    • Fixed sensor transformations and sensor data transformations mismatch in IMU and camera-based sensors
    • Fixed random dead-lock on synchronous mode at high frame rate
    • Fixed bug on Windows causing sun reflection artifacts
    • Fixed bug in waypoint.get_landmarks() causing some landmarks to be missed when s = 0
    • Fixed the actor.set_simulate_physics() for pedestrians and vehicles
    • Fixed bug causing camera-based sensors to stop sending data
    • Fixed the lack of determinism on the output of raycast sensors
    • Fixed missing laneChange record in converted OSM maps
    • Fixed bug in the actor's id returned by the semantic lidar
    • Fixed error when using --config parameter in make package
    • Fixed dependency of library Xerces-c on package
    • Fixed minor typo in the simulation data section of the documentation
    • Fixed the config.py to read the .osm files in proper utf-8 encoding
    Source code(tar.gz)
    Source code(zip)
  • 0.9.10.1(Sep 30, 2020)

    Patch Release 0.9.10.1

    Changes

    • API extensions:
      • Added actor.set_enable_gravity() function to enable/disable the gravity affecting the actor
    • Upgraded to DirectX 12 on Windows
    • Fixed bug on Windows causing sun reflection artifacts
    • Fixed the actor.set_simulate_physics() for pedestrians and vehicles
    • Fixed bug causing camera-based sensors to stop sending data
    • Fixed dependency of library Xerces-c on package
    Source code(tar.gz)
    Source code(zip)
  • 0.9.10(Sep 26, 2020)

    Release 0.9.10

    Highlights

    • Added retrieval of bounding boxes for all the elements of the level
    • Added deterministic mode for Traffic Manager
    • Added support in Traffic Manager for dead-end roads
    • Upgraded CARLA Docker image to Ubuntu 18.04
    • Upgraded to AD RSS v4.1.0 supporting unstructured scenes and pedestrians, and fixed spdlog to v1.7.0
    • Changed frozen behavior for traffic lights. It now affects to all traffic lights at the same time
    • Added new pedestrian models
    • API changes:
      • Renamed actor.set_velocity() to actor.set_target_velocity()
      • Renamed actor.set_angular_velocity() to actor.set_target_velocity()
      • RGB cameras exposure_mode is now set to histogram by default
    • API extensions:
      • Added carla.Osm2Odr.convert() function and carla.Osm2OdrSettings class to support Open Street Maps to OpenDRIVE conversion
      • Added world.freeze_all_traffic_lights() and traffic_light.reset_group()
      • Added client.stop_replayer() to stop the replayer
      • Added world.get_vehicles_light_states() to get all the car light states at once
      • Added constant velocity mode (actor.enable_constant_velocity() / actor.disable_constant_velocity())
      • Added function actor.add_angular_impulse() to add angular impulse to any actor
      • Added actor.add_force() and actor.add_torque()
      • Added functions transform.get_right_vector() and transform.get_up_vector()
      • Added command to set multiple car light states at once
      • Added 4-matrix form of transformations
    • Added new semantic segmentation tags: RailTrack, GuardRail, TrafficLight, Static, Dynamic, Water and Terrain
    • Added fixed ids for street and building lights
    • Added vehicle light and street light data to the recorder
    • Improved the colliders and physics for all vehicles
    • All sensors are now multi-stream, the same sensor can be listened from different clients
    • New semantic LiDAR sensor (lidar.ray_cast_semantic)
    • Added open3D_lidar.py, a more friendly LiDAR visualizer
    • Added make command to download contributions as plugins (make plugins)
    • Added a warning when using SpringArm exactly in the 'z' axis of the attached actor
    • Improved performance of raycast-based sensors through parallelization
    • Added an approximation of the intensity of each point of the cloud in the LiDAR sensor
    • Added Dynamic Vision Sensor (DVS) camera based on ESIM simulation http://rpg.ifi.uzh.ch/esim.html
    • Improved LiDAR and radar to better match the shape of the vehicles
    • Added support for additional TraCI clients in Sumo co-simulation
    • Added script example to synchronize the gathering of sensor data in client
    • Added default values and a warning message for lanes missing the width parameter in OpenDRIVE
    • Added parameter to enable/disable pedestrian navigation in standalone mode
    • Improved mesh partition in standalone mode
    • Added Renderdoc plugin to the Unreal project
    • Added configurable noise to LiDAR sensor
    • Replace deprecated platform.dist() with recommended distro.linux_distribution()
    • Improved the performance of capture sensors

    Fixes

    • Fixed the center of mass for vehicles
    • Fixed a number of OpenDRIVE parsing bugs
    • Fixed vehicles' bounding boxes, now they are automatic
    • Fixed a map change error when Traffic Manager is in synchronous mode
    • Fixes add entry issue for applying parameters more than once in Traffic Manager
    • Fixes std::numeric_limits::epsilon error in Traffic Manager
    • Fixed memory leak on manual_control.py scripts (sensor listening was not stopped before destroying)
    • Fixed a bug in spawn_npc_sumo.py script computing not allowed routes for a given vehicle class
    • Fixed a bug where get_traffic_light() would always return None
    • Fixed recorder determinism problems
    • Fixed several untagged and mistagged objects
    • Fixed rain drop spawn issues when spawning camera sensors
    • Fixed semantic tags in the asset import pipeline
    • Fixed Update.sh from failing when the root folder contains a space on it
    • Fixed dynamic meshes not moving to the initial position when replaying
    • Fixed colors of lane markings when importing a map, they were reversed (white and yellow)
    • Fixed missing include directive in file WheelPhysicsControl.h
    • Fixed gravity measurement bug from IMU sensor
    • Fixed LiDAR’s point cloud reference frame
    • Fixed light intensity and camera parameters to match
    • Fixed and improved auto-exposure camera (histogram exposure mode)
    • Fixed delay in the TCP communication from server to the client in synchronous mode for Linux
    • Fixed large RAM usage when loading polynomial geometry from OpenDRIVE
    • Fixed collision issues when debug.draw_line() is called
    • Fixed gyroscope sensor to properly give angular velocity readings in the local frame
    • Fixed minor typo in the introduction section of the documentation
    • Fixed a bug at the local planner when changing the route, causing it to maintain the first part of the previous one. This was only relevant when using very large buffer sizes
    Source code(tar.gz)
    Source code(zip)
  • 0.9.9(Apr 23, 2020)

    Patch Release 0.9.9.4

    Fixes

    • Improved performance (around 3x) in synchronous mode on Ubuntu, by disabling the delay of packets on the network interface (Nagle's algorithm).
    • Improved the LiDAR and Radar sensors with a parallel implentation of the raycasting
    • Added default values and a warning message for lanes missing the width parameter in OpenDRIVE

    Patch Release 0.9.9.3

    Fixes

    • Fixed loading a new map with an official patch for Unreal Engine 4.24 (only for Ubuntu)
    • Fixed large RAM usage when loading polinomial geometry from OpenDRIVE
    • Fixed collision issues when debug draw(debug.draw_line) is called

    Highlights

    • Added API functions get_right_vector and get_up_vector
    • Added parameter to enable/disable pedestrian navigation in standalone mode
    • Improved mesh split in standalone mode
    • Added PythonAPI command to set multiple car light states at once
    • Added PythonAPI carla.world.get_vehicles_light_states to get all the car light states at once
    • Added support for additional TraCI clients in Sumo co-simulation

    Patch Release 0.9.9.2

    Fixes

    • Fixed the loading of a new map through Python API for windows.

    Patch Release 0.9.9.1

    Highlights

    • Added API function add_angular_impulse() to add angular impulse to any actor
    • Fixed rain drop spawn issues when spawning camera sensors
    • Fixed Update.sh from failing when the root folder contains a space on it
    • Fixed colors of lane markings when importing a map, they were reversed (white and yellow)
    • Fixed missing include directive in file WheelPhysicsControl.h
    • Fixed gravity measurement bug from IMU sensor
    • OpenDRIVE ingestion bugfixes
    • Added Dynamic Vision Sensor (DVS) camera based on ESIM simulation http://rpg.ifi.uzh.ch/esim.html

    Compiled version

    Highlights

    • Introduced hybrid mode for Traffic Manager
    • Upgraded to Unreal Engine 4.24
    • Exposed the world lights to the client so they can be changed on the fly
    • Added examples of sumo co-simulation for Town01, Town04, and Town05
    • Added ptv vissim and carla co-simulation
    • Upgraded to AD RSS v3.0.0 supporting complex road layouts and i.e. intersections
    • Added junction smoothing algorithm to prevent roads from blocking other roads with level differences
    • Added automatic generation of traffic lights, stop signal and yield signal from OpenDRIVE file
    • Bug fixes

    For further information keep reading here and see the full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.8(Mar 9, 2020)

    Compiled version

    Highlights

    • DEB repositories for CARLA release and ROS bridge
    • Added support for SUMO co-simulation
    • Documentation has been heavily updated and improved
    • Added OpenDRIVE standalone mode that allows physical map generation from OpenDRIVE data
    • Traffic Manager
      • Several bug fixes and improvements
      • Multi-Client and Multi-TrafficManager
      • Support for synchronous mode
    • Highlighted API extensions:
      • New carla.Junction as queryable object from waypoint
      • New supported OpenDRIVE geometries: spirals and cubic polynomial
    • Improved spatial query performance on waypoints
    • New weather system: night time, fog, rain ripples, and now wind affects vegetation and rain (not car physics)
    • Added night mode, with city lights available in nightfall
    • Added car light support to some cars, some motorcycles and all bikes
    • New assets: Cybertruck
    • Improved visual quality

    For further information keep reading here and see the full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.7(Dec 21, 2019)

    Compiled version

    Patch 0.9.7.4

    • Fixed the position of a tree in Town02 that was misplaced in the middle of the road

    Patch 0.9.7.3

    • Fixed #2386: agent crashes due to API changes in is_within_distance_ahead

    Patch 0.9.7.2

    • Fixed values for spectator camera to work with last patch 0.9.7.1

    Patch 0.9.7.1

    • Fixed bug that made the image too bright when setting quality-level Low
    • Fixed bug that kept quality-level Low instead of applying the desired quality-level Epic

    Highlights

    • Add build variant with AD RSS library integration with RSS sensor and result visualization
    • Support for OpenGL and Vulkan in docker + headless mode
    • Added new sensor: Inertial measurement unit (IMU)
    • Added new sensor: Radar
    • Exposed RGB camera attributes: exposure, depth of field, tone mapper, color correction, and chromatic aberration
    • Now all the camera-based sensors are provided with an additional parametrized lens distortion shader
    • Added TrafficManager to replace autopilot in managing the NPC vehicles
    • Improved pedestrians navigation
    • Moved GNSS sensor from client to server-side
    • Added exporter plugin for UE4 to allow export meshes ready for Recast calculation
    • The 'make import' process now rename the assets accordingly and set complex collision as simple
    • New Python API function added (map.get_crosswalks()) that returns a list with all points that define the crosswalk zones from OpenDRIVE file
    • Better steering in manual control
    • Added Doxygen documentation online with automatic updates through Jenkins pipeline

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.6(Jul 12, 2019)

    Compiled version

    Highlights

    • Upgraded to Unreal Engine 4.22
    • Added Vulkan support, if installed, CARLA will use Vulkan, use -opengl flag to launch with OpenGL
    • The simulator is now compiled in "Shipping" mode, faster but it accepts less command-line arguments
    • Pedestrians are back:
      • Spawn pedestrians that will roam randomly on sidewalks
      • The script 'spawn_npc.py' spawns now pedestrians, adjust the number with the flag -w
      • Added navigation meshes for each maps for pedestrian navigation
    • Allow adding custom props (FBX) to CARLA Blueprint library so they are spawnable
    • Simplified pipeline for importing and packaging maps and custom props
    • Vehicle physics:
      • Added access to vehicle transmission details
      • Added access to vehicle physics brake values
      • Added tire friction trigger boxes for simulating slippery surfaces
    • Added camera gamma correction as command-line argument to manual_control.py
    • Added ability to set motion blur settings for RGB camera in sensor python blueprint
    • Added C++ client example using LibCarla
    • Added PythonAPI documentation generator, we documented in detail all the Python reference
    • Added a new Python script config.py that allows the user to configure the simulator from the command-line
    • New recorder features:
      • Documented recorded system and binary file
      • Added optional parameter to show more details about a recorder file (related to show_recorder_file_info.py)
      • Added playback speed (slow/fast motion) to the replayer
      • Allow custom paths for saving the recorded files
      • More data is now recorded to replay animations:
        • Wheels of vehicles are animated (steering, throttle, handbrake), also bikes and motorbikes
        • Walker animations are simulated (through speed of walker)

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.5(Apr 4, 2019)

    Compiled version

    Highlights

    • New Town07, rural environment with narrow roads
    • Reworked OpenDRIVE parser and waypoints API
      • Fixed several situations in which the XODR was incorrectly parsed
      • Exposed more information: lane marking, lane type, lane section id, s
      • API change: waypoint's lane_type is now an enum, carla.LaneType
      • API change: carla.LaneMarking is not an enum anymore, extended with color, type, lane change, and width
      • API extension: map.get_waypoint accepts an extra optional flag argument lane_type for filtering lane types
      • API extension: carla.Map can be constructed off-line out of XODR files, carla.Map(town_name, xodr_content)
      • API extension: id property to waypoints, uniquely identifying waypoints up to half centimetre precision
    • API change: Renamed "lane_invasion" to "lane_detector", added too its server-side sensor to be visible to other clients
    • API extension: new carla.command.SpawnActor to spawn actors in batch
    • API extension: map.transform_to_geolocation to transform Location to GNSS GeoLocation
    • API extension: added timestamp (elapsed simulation seconds) to SensorData
    • API extension: method client.apply_batch_sync that sends commands in batch and waits for server response
    • API extension: optional argument "actor_ids" to world.get_actors to request only the actors with the ids provided

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.4(Mar 1, 2019)

    Compiled version

    Highlights

    • Added recording and playback functionality
    • Added synchronous mode, simulator waits until a client sends a "tick" cue, client.tick()
    • Allow changing map from client-side, added client.load_map(name), client.reload_map(), and client.get_available_maps()
    • Added scripts and tools to import maps directly from .fbx and .xodr files into the simulator
    • Exposed minimum physics control parameters for vehicles' engine and wheels
    • Allow controlling multiple actors in "batch mode"
    • New Town06, featuring a "Michigan left" intersection including:
      • Connection ramp between two highways
      • Incorporation to a highway requiring changing several lanes to take another exit
      • Junctions supporting different scenarios
    • New traffic signs assets: one-way, no-turn, more speed limits, do not enter, arrow floors, Michigan left, and lane end
    • New pedestrian texture to add more variations
    • New road PBR material
    • Extended the waypoint API with lane_change, lane_type, get_right_lane() and get_left_lane()
    • Added world settings for changing no-rendering mode and synchronous mode at run-time
    • Added methods to acquire a traffic light's pole index and all traffic lights in it's group
    • Added performance benchmark script to measure the simulator's rendering performance
    • Added manual_control_steeringwheel.py to control agents using Logitech G29 steering wheels (and maybe others)

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.3(Jan 31, 2019)

    Compiled version

    Highlights

    • New Town04 (biggest so far), includes a freeway, new bridge and road barrier, a nicer landscape based on height-map, and new street props
    • New Town05, adding more variety of intersections for the scenario runner
    • Redesigned pedestrian models and animations (walk and idle) for male and female characters
    • Added sensor for detecting obstacles (ray-cast based)
    • Added sensor GNSS (GPS)
    • Basic agent integrated with global router
    • Added a few methods to manage an actor:
      • set_velocity: for setting the linear velocity
      • set_angular_velocity: for setting the angular velocity
      • get_angular_velocity: for getting the angular velocity
      • add_impulse: for applying an impulse (in world axis)
    • Renamed vehicle.get_vehicle_control() to vehicle.get_control() to be consistent with walkers

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.2(Dec 22, 2018)

    Compiled version

    Highlights

    • Updated ROS bridge for CARLA 0.9.X (moved to its own repository)
    • Added Python API "agents" extension, includes
      • Global route planner based on the Waypoints API (compatible with OpenDrive)
      • BasicAgent: new client agent that can drive to a given coordinate of the map using the waypoint API and PID controllers, attending to other vehicles and traffic lights
      • RoamingAgent: new client agent that can drive at different speeds following waypoints based on PID controllers, attending to other vehicles and traffic lights
      • LocalPlanner functionality to navigate waypoints using PID controllers
      • LateralControl and LongitudinalControl PIDs
    • Added support for manual gear shifting
    • Added "role_name" attribute to actors to easily identify the "hero" vehicle
    • Changed traffic lights in Town03 to American style
    • Added new junction types with only stop signs

    See full CHANGELOG.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.1(Nov 16, 2018)

    Compiled version

    Links

    Highlights

    • New Town03 with more road variety, multiple lanes, roudabout and more.
    • Lots of additions to the Python API, more info available and more control over actors.
    • Our map now include road layout info based on OpenDrive with an API for querying waypoints.
    • Migrated Lidar.
    • Migrated image handling methods.
    • Improved performance of client-side.
    • New weather system.
    • And lots of improvements and fixes! See full CHANGELOG.
    Source code(tar.gz)
    Source code(zip)
  • 0.9.0(Jul 30, 2018)

    Important

    This is a development release that introduces major changes in the API. Please read our blog post.

    Compiled version

    Links

    New Features / Fixes

    • Upgraded to Unreal Engine 4.19
    • Redesign of the networking architecture
      • Allows any number of clients to connect simultaneously
      • Now is possible to add and remove at any time any vehicle or camera
      • Now is possible to control any vehicle or camera
      • Now is possible to place cameras anywhere
      • Reduced to two ports instead of three
      • First port uses an RPC protocol based on rpclib
      • Second port is for the streaming of the sensor data
    • Redesign of the Python API
      • Actors and sensors are now exposed in the API and can be independently controlled
      • The Python module is built in C++, with significant performance gain in some operations
      • Many functionality haven't been ported yet, so expect a lot of things missing
    • Redesign of the build system to accommodate the changes in dependencies
      • Everything can be done now with the Makefile
      • For the moment only Linux is supported, sorry
    • Massive clean up of all unused assets
    • Some aesthetic fixes to the vehicles
    Source code(tar.gz)
    Source code(zip)
  • 0.8.4(Jun 18, 2018)

    Known issues

    • If you observe random crashes in Linux, see #513 to disable two-wheeled vehicles.

    Compiled version

    New Features / Fixes

    • Community contribution: ROS bridge by @laurent-george
    • New vehicle: Tesla Model 3
    • Added an option to "CarlaSettings.ini" to disable bikes and motorbikes
    • Fixed missing collision of vehicles introduced in 0.8.3
    • Improved stability of bikes and motorbikes
    • Improved autopilot turning behaviour at intersections, now using front wheels positions as reference
    • Temporarily removed Kawasaki Ninja motorbikes because the model was having some stability issues
    Source code(tar.gz)
    Source code(zip)
  • 0.8.3(Jun 8, 2018)

    Important known issues

    • Collisions are not annotated for the default player vehicle #491
    • Bikes and motorbikes often cause traffic disruptions and cannot be disabled

    Compiled version

    Links

    New Features / Fixes

    • Added two-wheeled vehicles, 3 bicycles and 4 motorbikes
    • Several art optimizations (CARLA is now about 10% faster)
      • Improved the performance of vegetation assets, adjusted LOD and culling distance, set billboards where possible
      • Drastically reduced the number of polygons of the landscape while keeping the original shape
      • Removed some high-cost unnecessary assets
      • Remodelled Mustang and NissanMicra, now with less polygons and materials, better textures and LOD
      • Remodelled building SM_TerracedHouse_01, now with more polygons but less materials and better textures
    • CARLA releases include now a Dockerfile for building docker images
    • Change in HUD: replace "FPS" by "Simulation Step"
    • The current map name is now included in the scene description message sent to the client
    • Adapted "manual_control.py" and "view_start_positions.py" to use the map name sent by the simulator
    • Improved the vehicle spawning algorithm, now it tries to spawn as much cars as possible even if there are not enough spawn points
    • "Setup.sh" is now faster and accepts an argument to run multiple jobs in parallel
    • Fixed foliage distance culling using wrong distance in "Low Mode"
    • Fixed NissanMicra slightly turning left when driving straight
    Source code(tar.gz)
    Source code(zip)
  • 0.8.2(Apr 23, 2018)

    Compiled version

    Links

    New Features / Fixes

    • Revamped driving benchmark
      • Changed name from benchmark to driving benchmark
      • Fully Redesigned the architecture of the module
      • Added a lot more documentation
      • Now you can stop and resume the benchmarks you run
    • Rolled back vehicle's location to the pivot of the mesh instead of the center of the bounding box
    • Added relative transform of the vehicle's bounding box to the measurements, player and non-players
    • Added "frame number" to each sensor measurement so it is possible to sync all the measurements based on the frame they are produced
    • Improved vehicle spawner to better handle spawning failures
    • Walkers use now a closer angle to detect vehicles, so they don't stop moving if a car passes nearby
    • Fixed lighting artefact causing the road to change its brightness depending on the distance to the camera
    • Fixed captured images overexposed in Low mode
    • Fixed illegal character in asset name
    • Fixed editing sun azimuth angle in CarlaWeadther.ini had no effect
    • Fixed crash when using a non-standard image size in DirectX (Windows)
    • Fixed issue with using multiple "SceneCaptureToDiskCamera"
    Source code(tar.gz)
    Source code(zip)
  • 0.8.1(Apr 5, 2018)

    Compiled version

    Links

    New Features / Fixes

    • New Python example for visualizing the player start positions.
    • Fixed box extent of non-player agents was sent in centimeters instead of meters.
    • Fixed speed limits were sent in km/h instead of m/s.
    • Fixed issue in Volkswagen van's wheels causing it to overturn.
    Source code(tar.gz)
    Source code(zip)
  • 0.8.0(Mar 27, 2018)

    Compiled version

    Links

    Highlights

    • Upgraded to Unreal Engine 4.18.
    • Created our own pedestrian 3D models free to use and distribute.
    • Removed Epic's Automotive Materials dependencies.
    • 360 Ray-cast Lidar thanks to Anton Pechenko (Yandex).
    • Added quality level settings Epic and Low.
    • Measurements now use SI units.
    • Added API methods to convert depth images to a point cloud.
    • A lot of performance optimizations.
    Source code(tar.gz)
    Source code(zip)
  • 0.7.1(Jan 25, 2018)

    Compiled version

    Highlights

    • New Python API module: Benchmark
      • Defines an interface for benchmarking AI agents under different tasks and conditions.
      • Includes the CoRL2017 benchmark.
    • New Python API module: Basic Planner
      • This module provides basic functionality to find routes for the agent, this is a temporary solution until we upgrade our map generation.
    • Vehicle’s roll, pitch, and yaw are now sent to the client, which provides more info than the orientation used until now.
    • Improved simulation repeatability, vehicles now follow fixed routes based on a random seed.
    Source code(tar.gz)
    Source code(zip)
  • 0.7.0(Nov 28, 2017)

    Compiled version

    Highlights

    Warning: Python API is not compatible with previous versions.

    • Cleaner and more robust Python client API.
    • CARLA server mode is now disabled by default (enable it with command-line argument -carla-server).
    • Added wind effect to some trees and plants.
    Source code(tar.gz)
    Source code(zip)
  • 0.6.0(Nov 10, 2017)

  • 0.5.4(Oct 30, 2017)

An open autonomous driving platform

We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard. -- John F. Kennedy, 1962

Apollo Auto 22.1k Jan 8, 2023
Hands-On example code for Sensor Fusion and Autonomous Driving Stack based on Autoware

Autoware "Hands-On" Stanford Lecture AA274 / Graz University of Technology M. Schratter, J. Zubaca, K. Mautner-Lassnig, T. Renzler, M. Kirchengast, S.

Virtual Vehicle 27 Dec 12, 2022
ModuLiDAR is an all-in-one open-source software for autonomous UGVs and industrial robots.

ModuLiDAR is an all-in-one open-source software for autonomous UGVs and industrial robots. the target industries that ModuLiDAR is working on are farming industry, mining industry, warehouses industry, and construction industry.

null 18 Dec 12, 2022
Open source software for autonomous drones.

Prometheus - 自主无人机开源项目 [English Readme] Prometheus是希腊神话中最具智慧的神明之一,希望本项目能为无人机研发带来无限的智慧与光明。 项目总览 Prometheus是一套开源的自主无人机软件平台,为无人机的智能与自主飞行提供全套解决方案。本项目基于PX4

Amov Lab 1.6k Jan 9, 2023
An Open-source Strong Baseline for SE(3) Planning in Autonomous Drone Racing

Fast-Racing An Open-source Strong Baseline for SE(3) Planning in Autonomous Drone Racing 0. Overview Fast-Racing is a strong baseline that focuses on

ZJU FAST Lab 109 Dec 6, 2022
A Motorola 68K simulator based on Musashi-master 68K simulator.

cpmsim Originally referenced as http://home.earthlink.net/~schultdw/cpm68/simulator.html (now 404) This simple CP/M-68K simulator, is built around the

Neil Cherry 8 Oct 26, 2021
custom esp8266 controller for driving the pwm led controller

room8266 custom esp8266 controller for driving the pwm led controller designed to drive this: https://github.com/austinscreations/PWM-LED-Controller t

null 1 Nov 1, 2021
Self driving car with obstacle detection and avoidance

STM32F4-Self-Driving-Car-Mini-Project Self driving car with obstacle detection and avoidance Hardware STM32F401RE Dev Board HCSR04 ultrasonic sensor (

Olaoluwa Raji 2 Jan 6, 2022
General purpose power controller, capable of driving soldering irons using different voltages and probe types.

All-purpose Power Micro Controller This general purpose power micro controller features: Wheatstone Bridge front-end New Texas Instruments INA823 inst

Tomasz Jastrzębski 30 Dec 3, 2022
Masters degree research project source code. Might come back to it later.

Camflow Network Provenance Authors Tray Keller and Austin Waddell CamFlow and the Linux Provenance Module (LPM) framework are both an excellent step i

Tray Keller 2 Mar 14, 2022
Autonomous recorder for vex robots using the PROS API

VEX Robot Recorder Description This is a demo project for the "Recorder" class that allows the user to record and play back past recorded autonomouses

null 2 Jun 14, 2022
Decentralized architecture for loss tolerant semi-autonomous robotics

gestalt-arch Decentralized architecture for loss tolerant semi-autonomous robotics Objective We demonstrate a decentralized robot control architecture

null 4 Dec 18, 2021
AWS Ambit Scenario Designer for Unreal Engine 4 (Ambit) is a suite of tools to streamline content creation at scale for autonomous vehicle and robotics simulation applications.

AWS Ambit Scenario Designer for Unreal Engine 4 Welcome to AWS Ambit Scenario Designer for Unreal Engine 4 (Ambit), a suite of tools to streamline 3D

AWS Samples 77 Jan 2, 2023
VEX v5 Pro program that records driver movements and plays them back during the autonomous period.

Autonomous Recorder This code was written for team 5588R, but it can be easily modified to work with your team's robot. Notes Code isn't fully finishe

brett 2 Jun 21, 2022
A nonlinear MPC used to control an autonomous car.

MPC local planner A nonlinear MPC used to control an autonomous car. Description This repository contains an implementation of a nonlinear MPC that is

Tor Børve Rasmussen 11 Dec 8, 2022
Multi-sensor perception for autonomous vehicles

Multi-Sensor Fusion for Perception -- 多传感器融合感知 Maintained by Ge Yao, [email protected] Up & Running Overview 本Repo为基于ROS melodic @ Ubuntu 18.04的Mul

Ge Yao 5 Dec 2, 2022
Open-source and open-hardware scientific RPN calculator

OpenRPNCalc Open-source and open-hardware scientific RPN calculator Introduction OpenRPNCalc is a scientific calculator based on STM32 microcontroller

Anton Poluektov 152 Dec 23, 2022
A fully-functional open source and open hardware mechanical USB computer keyboard with only three keys!

threeboard threeboard is a fully-functional open source and open hardware mechanical USB computer keyboard with only three keys. It supports multiple

Conor Taylor 98 Dec 9, 2022
Block Cipher Reverse Engineering: A Challenge by Nintendo European Research & Development

My algorithm cracks NERD HireMe for any output within 1 Second without Brute-Force! Read more if you want to find out how this was accomplished or execute this algorithm yourself on Wandbox - Online C++ Compiler

Alexander Töpfer 58 Nov 15, 2021