Pittsburgh is currently one of the major hubs for the development of autonomous vehicles. Thus, we decided to create an autonomous car simulator to educate and inspire programmers to explore the world of self-driving vehicles and develop their coding abilities.

What it does

Our simulator allows users to upload/enter Javascript code that will control an autonomous vehicles in navigating a series of challenges. Users are able to use various functions that we created to program the vehicle, and must use their programming prowess to navigate obstacles in a safe and efficient way without direct input.

How we built it

We built the program using Javascript and Pixi.js, which a flexible 2D WebGL renderer. We also used html and create the user interface.

Challenges we ran into

We ran into challenges in rendering the graphics in html and creating the underlying physics engine. We also had issues with collision detection and interpreting the user's code and translating that into motion for the vehicle. Overall, we ran into challenges in every step of the process, and had to experiment and refine in order to find the solution

Accomplishments that we're proud of

We are very proud of realizing our idea of creating a simple interface for programmers to experiment with programming autonomous vehicle. Our goal was to generate interest in this field, because we believe that this is the future, and I think that our simulator communicates the general sense of working with driverless cars. In addition, we are most proud of overcoming the many challenges that came up and getting this concept build under the time constraints

What we learned

We learned about Pixi.js, which we believe has many applications, especially in generating captivating graphics and motion. Also we learned about game design, and UI design as well.

What's next for Drive

There are definitely many ways to refine Drive in terms to creating better visuals and refining the motion and physics. We also would like to design specific levels that constantly challenge the programmer, such as moving obstacles.

Built With

Share this project: