3D Browser Based Driving Simulation Using Steering Wheel Joystick

Finally, my first project during my master degree is completed.

3D Browser Based Driving Simulation Using Steering Wheel Joystick.

So, basically, user can use steering wheel joystick to navigate their car in 3D environment using browser as the user interface application. We also provide desktop application dashboard to give the user the look and feel of a real car dashboard such as speed, rpm, distance covered, fuel tank, etc. Moreover, navigation and the shortest path to the nearest gas station is provided. Sounds interesting? it is.

The tools that we use to accomplish this project is as follows:

– Google Earth to provide the browser based 3D environment

– DirectX to catch the input from steering wheel joystick

– C# to process the input from DirectX as well as creating the dashboard.

– Google Map to provide the navigation for gas station

– Google Sketch-up to create the 3D car as well as some main buildings in the simulation area.

In short, we use DirectX to catch the joystick input.  Then we map the input to keyboard press using SendKeys method in C#. The keyboard input will be caught by Google Earth javascript function and is used for navigation. We use monster milktruck example as the benchmark for navigation in 3D environment.

For gas station navigation, we embed web browser in our desktop application and use Google Map to navigate and find the shortest path to the nearest gas station.

The tricky part is to synchronize between the car speed in google earth and car speed in our dashboard desktop application. We experiment on thread sleep timing until we can pretty much adjust the synchronization in the tolerable difference.

To think this project is done only in less than one month, i have to give credit to our team for the sleepless night of researching and development. Time to drink soju and celebrate :D.



3 thoughts on “3D Browser Based Driving Simulation Using Steering Wheel Joystick”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s