Porsche Engineering is developing the intelligent vehicle of the future with Game Engines.
Game engines bring computer games to life – and they also help develop new driving functions, such as training driver assistance systems with synthetic sensor data. Porsche Engineering reports on the role they play in vehicle development.
When Tobias Watzl comes home from work, he occasionally sits down in front of the Playstation to relax. However, the 28-year-old sees the games differently from most players. "Sometimes I wonder, for example, how the developers managed to get a certain reflection or texture – instead of defeating my enemies," he says with a laugh. There's a reason he looks so closely: as part of the Porsche Engineering team, he creates virtual worlds every day, using a computer to recreate aspects of highways to train driver assistance systems, for example.
It is no coincidence that the digital road looks like a computer game. This is because Watzl uses Unreal software in his work – a game engine that generates the images in the hit computer game Fortnite, among others. What otherwise brings virtual battles to the screen is a simple tool at Porsche Engineering: game engines teach assistance systems or help designers visualise components. Thanks to gaming technology, customers will soon be able to take a virtual seat in the vehicle they have just ordered, long before it leaves the assembly line.
"Game engines provide the technology to create the necessary environment for simulating driver assistance systems as a standard feature," explains Frank Sayer, Senior Manager Virtual Vehicle Development at Porsche Engineering. The background: Advanced Driver Assistance Systems (ADAS) algorithms need a lot of training and validation. For example, they have to learn how to detect a traffic situation at lightning speed using various sensors and react appropriately over several test kilometres. This would require many real test drives – and by no means every event necessary for training would occur.
Every eventuality can be played out
This is why Porsche Engineering is moving training into the virtual world: game engines simulate the drives with which the algorithm practices. Every scenario and every eventuality can be played out in this way – even those that cannot be rehearsed in real life for safety reasons: the car in front brakes unexpectedly; an animal runs into the road; the sun blinds the on-board cameras. Mixed operation is also conceivable: a real vehicle reacts to virtual objects.
Some virtual test tracks have real-life models, such as the A8 autobahn near Stuttgart Airport. "Our colleagues know every exit and every sign – even though they've never been there before," smiles Ionut Tripon of Porsche Engineering Romania in Cluj. He's part of the team that builds the digital test tracks and is one of the new types of developers entering the automotive industry: software developers with a gaming background and an understanding of the automotive industry are shaping the future of mobility every bit as much as AI experts and mechanical engineers. "Here, passion for video games and their development is combined with conventional skills – this is highly motivating, exciting, and of immediate relevance for our projects," says Tudor Ziman, who heads up function development in Cluj.
The drives simulated with the help of game engines have the advantage that they can be repeated as often as required and can be controlled down to the smallest detail. They also take less time than real ones. "What takes hours in reality can be reduced to seconds," says Tripon. The only limiting factor here is the computing power of the hardware used.
But even this limit is diminishing. Porsche Engineering has started to move virtual development to the cloud: the driving simulations are outsourced to the data centre of service providers such as Amazon Web Services, where they run in parallel on dozens of machines. When thousands of simulated cars (called instances) do their laps, the development time is drastically reduced.
Virtual tests instead of real prototypes
Game engines are used in design to make visible what does not yet exist. Current example: during the development of the Cayenne Coupé, consideration was given to reducing the black frit band on the glass roof. This area at the edge of the glass prevents the track of the sunblind from being visible underneath. But how wide must the frit band be? Until now, welding and sawing have been used in such cases: one prepares a vehicle and tries out several glass roofs with different frit bandwidths.
The virtual test, by contrast, for which Porsche Engineering used the Visual Engineering Tool (VET) developed in-house and based on the Unity game engine, was much faster and more cost-effective. Using the original CAD data, the engineers virtually reconstructed the vehicle including the glass roof. After a few hours they were able to view the model from all sides using virtual reality (VR) glasses. The result was that the black edge was correctly dimensioned. "To do a real-life modification, we would have needed considerably more time and money," says engineer Watzl.
The images generated by game engines are so good nowadays that even professionals have to look closely to see the difference to reality. This will also further enhance the customer's buying experience in the future: Porsche is currently in the test phase for a Virtual Reality Car Configurator, which will then be rolled out in Porsche Centres. This system consists of a gaming PC with connected VR glasses and presents the customer on site with a three-dimensional simulation of their future vehicle. To do this, they need only briefly put together their desired model with the consultant – paint colour, rims, equipment. The Car Configurator then uses Unreal to calculate an image, which is initially presented on a 65-inch screen with 4K resolution. "The appearance is much better than with configurators on the internet – almost photorealistic," says Sebastian Oebels, digital marketing expert at Porsche AG, enthusiastically.
Customers can also put on VR glasses and inspect their dream car in three dimensions. The game engine then calculates a different perspective image for the left and right eye 60 times per second, giving the customer the impression that the vehicle is standing directly in front of them. They can walk around it, look at the rims up close, take a virtual seat, and inspect the interior right down to the seams of the leather seats. It is even possible to look into the glove compartment. If desired, the scenery can be switched from day to night to see the headlights.
The game engine uses original design data as raw material. However, the data has to be adapted. "We make many real-time-specific improvements," explains Lukas Kays from Mackevision, a Stuttgart-based specialist for computer-generated imagery (CGI). The company creates photorealistic special effects for film and television, including the Game of Thrones series, and developed the car configurator and Porsche. The fact that CAD files cannot simply be used for the virtual vehicle is due to their level of detail. A design engineer describes each part down to the last detail with its geometry.
Calculating an image from this 60 times per second can overwhelm a computer and lead to flickering in the display. The models must therefore be simplified. For example, instead of calculating a speaker grill with all its wires, the 3D designers use a high-resolution photo of the grill. Displaying this costs much less computing power, and the untrained viewer cannot see the difference anyway.
Realistic effects without much effort
The decisive advantage of a game engine is that it can be used without much programming effort. "Unreal 4 makes it easy to create materials," designer Kays offers as an example. "The reflections on the car paint, for example, don't need to be programmed." Programming your own renderer to handle such effects would be far too complex and expensive.
Game engines are also inexpensive. Corporate users like Porsche Engineering can use Unreal completely free of charge. They even receive the source code of the software so that they can adapt it to their requirements. "We want as many companies as possible to use the engine," explains Stefan Wenz, Business Development Manager at Epic Games, the US game company that developed Unreal more than 20 years ago. The company only earns money indirectly, for example through paid support.
For around five years now, the creators of the game engine have been actively courting industrial customers – mechanical engineers, architects and car manufacturers. "B2B promises the greatest growth," explains Wenz. To make the work of industrial users easier, Epic Games recently put together a free material package: it contains finished materials from Alcantara to walnut wood that designers can assign to the objects. In addition, last year the games manufacturer launched a support programme called MegaGrants, from which any company working with Unreal Engine can receive capital. So the development of computer games and automobiles continues to converge. In this respect, the self-driving car of the future will owe a little to gamers.
Engine of a computer game
The game engine is literally the engine of a computer game. It is a whole range of programmes. At the core is the graphics engine, which generates the actual image: it first takes the 3D model of an object to be depicted (in its original state it consists only of grid lines) and covers it with a digital surface. This texture, as it is known, can look like wood or metal, for example. Then it is calculated where the light falls, which parts of an object are in the shade and where something is reflected.
The calculation of the image is called rendering. The physics engine ensures that things in the game behave as they do in the real world. It calculates, for example, how often a thrown rock skips over the ground before it stops. To make the developers' work easier, a kind of editor is also included with which new simulations can be created without having to programme them from scratch. Millions of designers worldwide use these modular systems to create digital worlds – from mobile phone games to Hollywood action movies.
Game engines bring computer games to life – and help develop new driving functions, for example by training driver assistance systems with synthetic sensor data. Every scenario and every eventuality can be played out. In Porsche's Car Configurator, they even help customers choose a new vehicle.
Contributors: Frank Sayer, Tobias Watzl, Ionut Tripon, Sebastian Oebels
Text first published in the Porsche Engineering Magazine, reproduced with permission from Porsche Engineering GmbH
Text and Images property of Porsche Engineering GmbH