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.
Instructions: Download the zip file, extract it and run the executable file.
Version 2, 2/07/17
Version 1, 12/09/16
Linux Mac Windows 32 Windows 64
Please see the Releases page for the latest version of the Term 2 simulator (v1.45, 6/14/17).
Source code can be obtained therein or also on the term2_collection branch.
Please see the Releases page for the latest version of the Term 3 simulator (v1.2, 7/11/17).
Source code can be obtained therein or also on the term3_collection branch.
Please see the CarND-Capstone Releases page for the latest version of the Capstone simulator (v1.3, 12/7/17).
Source code can be obtained therein.
-
Clone the repository to your local directory, please make sure to use Git LFS to properly pull over large texture and model assets.
-
Install the free game making engine Unity, if you dont already have it. Unity is necessary to load all the assets.
-
Load Unity, Pick load exiting project and choice the
self-driving-car-sim
folder. -
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.
-
Play a scene. Jump into game mode anytime by simply clicking the top play button arrow right above the viewing window.
-
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.
-
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.