I am a computer science student from Austria. will spend this summer at the HPC facilities in Ostrava developing a car race game demonstration.
I am studying at JKU Linz and currently finishing the bachelor program. In my further studies at university, I am going to focus on machine learning and high performance computing. Besides studying I like going out with my friends from university. My favourite sports is skiing in the Austrian mountains.
The game shall enthuse the young generation for high performance computing. The goal of the game is to change the shape of the car to achieve better aerodynamics and therefore win the race against other players.
My part on this project will focus on the graphics and the information-exchange with the supercomputer. My teammate Nicola Luminari will implement the calculation of the aerodynamics of the manipulated car models using the CFD software called OpenFOAM on the supercomputer “Anselm”.
For the implementation of the game itself I am going to use the Unity game engine. Unity is a so called freemium application, but the free version covers all important features for this project. Unity allows C# as well as Java-Script plugins to add functionality to the game. I will use this interface to connect to the supercomputer and handle the data transfer.
The czech car Tatra87 will be the basic model. This car then will be modified by manipulating the vertices, therefore my knowledge gained from the computer graphics class pays off. The model will be separated by a set of planes. Then the distance of each vertex to the plane is scaled by some factor. This way of scaling preserves the connection points of the individual parts.
For modelling the landscape of the race I can make use of the large number of objects that someone can find in the unity asset store for free.
This is my first time working on a computer game and therefore I am gaining a lot of new experience on this topic. Currently I am working on an asynchronous implementation of the communication between the game and the supercomputer.
Ostrava is currently transforming from a place dominated by coal extraction and steel production to a modern international city. It’s interesting to see both parts that close together. I also enjoy the nightlife in the city centre especially at Stodolni Street, where there are a lot of nice pubs.
The SoHPC Experience
The first half of the project was dominated by testing different ways of implementation and a proof of concept. After finishing the phase at the drawing board the implementation of the final game was kicked off. The knowledge gained in the evaluation phase was considered and building blocks where put together.
The basic construct was finished very fast. Afterwards all the needed functions and features were added. Finally there are 11 consecutive parameters the player can change on its Tatra. 11 parameter even when discretised to only 3 values for each one would result in 3^11 = 177147 different models. Although Nicola could push down the time for one simulation from 1h to less than 30min, this number of simulations cannot be done. Also the online computation drops out for the reason of time. Therefore we used interpolation based on 23 simulations.
Functions like file handling and of course the actual simulation of the car race dominated the implementation part of the project.
The rest of the time was needed for refinement on all parts of the game. Details on the landscape were added, car physics became more realistic. Start and finishing areas were added and also the user interface had been improved. All this is hard to express with words, therefore enjoy the pictures.
At the end of my stay in Ostrava, I would like to thank everybody who was involved in this project for the pleasant experience I have made during this two months.
Figure 1 The starting page of the game
Figure 2 Red is the colour of the champions, right?
Figure 3 You can choose the colour fo the car-here we chose green
Figure 4 Visualization of the racing cars
Figure 5 The race is on!
Figure 6 The ongoing race
Figure 7 Here are the results