# CARLA — Open-Source Simulator for Autonomous Driving Research > A high-fidelity open-source driving simulator built on Unreal Engine, designed for developing, training, and validating autonomous driving systems in realistic urban environments. ## Install Save as a script file and run: # CARLA — Open-Source Simulator for Autonomous Driving Research ## Quick Use ```bash # Download and run the CARLA server wget https://carla-releases.s3.us-east-005.backblazeb2.com/Linux/CARLA_Latest.tar.gz tar -xzf CARLA_Latest.tar.gz cd CARLA_Latest ./CarlaUE4.sh # In another terminal, run a Python client pip install carla python PythonAPI/examples/generate_traffic.py ``` ## Introduction CARLA (Car Learning to Act) is an open-source simulator purpose-built for autonomous driving research. It provides photorealistic urban environments rendered by Unreal Engine, a flexible sensor suite, and a Python API for programmatic control. Researchers use CARLA to train and evaluate perception, planning, and control algorithms without deploying real vehicles. ## What CARLA Does - Renders photorealistic driving scenarios with dynamic weather, lighting, and traffic - Simulates a comprehensive sensor suite including cameras, LiDAR, radar, GNSS, and IMU - Provides a Python API for spawning vehicles, setting waypoints, and collecting sensor data - Supports co-simulation with SUMO for realistic traffic flow modeling - Includes a scenario runner for reproducible evaluation of driving agents against benchmarks ## Architecture Overview CARLA follows a client-server architecture. The server runs an Unreal Engine instance that renders the world and simulates physics. Clients connect via a TCP-based protocol using the Python or C++ API to control actors (vehicles, pedestrians, sensors) and retrieve simulation data. The server supports synchronous and asynchronous stepping modes, with synchronous mode guaranteeing deterministic replay. ## Self-Hosting & Configuration - Download prebuilt packages for Linux or Windows from the official releases - Requires a GPU with Vulkan or DirectX support for rendering - The Python client library installs via pip install carla - Configure world settings (weather, map, traffic density) through the Python API - Build from source with Unreal Engine 4 or 5 for custom map and asset development ## Key Features - Multiple detailed urban maps with intersections, highways, and residential areas - Programmable weather and time-of-day for testing perception robustness - Ground-truth labels for semantic segmentation, depth, and optical flow - ROS bridge for integrating CARLA with Robot Operating System workflows - Leaderboard challenge platform for standardized agent benchmarking ## Comparison with Similar Tools - **LGSVL Simulator** — discontinued in 2022; CARLA remains actively maintained with a larger community - **AirSim** — focuses on drones and indoor environments; CARLA specializes in urban driving scenarios - **NVIDIA DRIVE Sim** — commercial, high-fidelity driving simulator; CARLA is free and open source - **Waymax** — lightweight, data-driven simulator by Waymo; CARLA provides full 3D rendering and physics ## FAQ **Q: Can I train end-to-end driving models in CARLA?** A: Yes. CARLA provides camera, LiDAR, and other sensor streams alongside vehicle controls, making it suitable for imitation learning and reinforcement learning pipelines. **Q: Does CARLA support ROS integration?** A: Yes. The carla-ros-bridge package provides ROS topics for all CARLA sensors and controls, enabling integration with the ROS navigation and perception stacks. **Q: What maps are included?** A: CARLA ships with several maps including Town01 through Town15, ranging from simple intersections to complex multi-lane highway interchanges. **Q: Can I create custom environments?** A: Yes. You can build custom maps and assets using Unreal Engine and import them into CARLA. Documentation covers the full asset pipeline. ## Sources - https://github.com/carla-simulator/carla - https://carla.org/ --- Source: https://tokrepo.com/en/workflows/asset-dfb3ee1b Author: Script Depot