A self-driving car simulator built with Unity
Branch: master
Clone or download
Pull request Compare This branch is 2 commits behind udacity:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Welcome to Udacity's Self-Driving Car Simulator

This simulator was built for Udacity's Self-Driving Car Nanodegree, to teach students how to train cars how to navigate road courses using deep learning. See more project details here.

All the assets in this repository require Unity. Please follow the instructions below for the full setup.

Avaliable Game Builds (Precompiled builds of the simulator)

Instructions: Download the zip file, extract it and run the executable file.

Version 2, 2/07/17

Linux Mac Windows

Version 1, 12/09/16

Linux Mac Windows 32 Windows 64

Unity Simulator User Instructions

  1. Clone the repository to your local directory, please make sure to use Git LFS to properly pull over large texture and model assets.

  2. Install the free game making engine Unity, if you dont already have it. Unity is necessary to load all the assets.

  3. Load Unity, Pick load exiting project and choice the self-driving-car-sim folder.

  4. Load up scenes by going to Project tab in the bottom left, and navigating to the folder Assets/1_SelfDrivingCar/Scenes. To load up one of the scenes, for example the Lake Track, double click the file LakeTrackTraining.unity. Once the scene is loaded up you can fly around it in the scene viewing window by holding mouse right click to turn, and mouse scroll to zoom.

  5. Play a scene. Jump into game mode anytime by simply clicking the top play button arrow right above the viewing window.

  6. View Scripts. Scripts are what make all the different mechanics of the simulator work and they are located in two different directories, the first is Assets/1_SelfDrivingCar/Scripts which mostly relate to the UI and socket connections. The second directory for scripts is Assets/Standard Assets/Vehicle/Car/Scripts and they control all the different interactions with the car.

  7. Building a new track. You can easily build a new track by using the prebuilt road prefabs located in Assets/RoadKit/Prefabs click and drag the road prefab pieces onto the editor, you can snap road pieces together easily by using vertex snapping by holding down "v" and dragging a road piece close to another piece.

Self-Driving Car Simulator