14. August 2019
Assetto Corsa Competizione leans into realism to create the ultimate racing sim
To see how the studio developed this winning formula, we interviewed KUNOS Simulazioni Co-Founder, Brand and Product Manager Marco Massarutto, Senior Render Programmer Fabio Luchetta, Physics Developer Fernando Barbarossa, and Sound Designer Luca Sodano. The four developers explain how they were able to produce one of the most realistic racing sims ever created, elaborate on how they achieved stunning best-in-class visuals, and delve into how they designed a dynamic weather system that not only looks great but realistically affects how cars drive. Thank you for your time! As a studio, what drew Kunos Simulazioni to specialize in developing realistic racing sims?
KUNOS Simulazioni Co-Founder, Brand & Product Manager Marco Massarutto: The passion for motorsports and driving. 99.9 percent of motorsport enthusiasts that would love to drive a sports car can't afford one, but a good simulation can give them a rough idea. The excitement that you can get when you win an online race is not virtual. So, we always aimed to produce realistic racing simulations because we wanted to [produce that sensation better] than anyone else. When we started driving real cars on a race track, we felt like we got close to producing the real thing.
What did Kunos Simulazioni learn from developing the first Assetto Corsa that the studio is bringing into the sequel?
Massarutto: Good question. Well, we learned that a 12-person team, as we were in 2014, couldn’t do everything, nor could we compete at the same level against studios with more than 150 people. Funnily enough, our fans didn’t seem to recognize that! Jokes aside, you learn more from your mistakes than from your successes. And it appears that with the first Assetto Corsa, we did more right than wrong. What I can say is that it is very important, when you define a game mode or a game mechanic, that you [develop] it until it is 110 percent ready and test before moving onto something else, and that you make sure that it perfectly fits in with the rest of your gaming environment. In order to do that, you need to spend the proper time designing your game. This is an area where we, ourselves, could still improve upon.
Assetto Corsa Competizione is being praised as one of the most realistic racing sims ever created. Can you talk about the lengths the studio went through to nail the game's authenticity, including the tracks?
Massarutto: Since we founded the studio in 2005, car handling has been our absolute first priority. Therefore, our game structure and all of our features have been built around the physics engine, which through the years, has been tweaked over time. This includes the time we worked inside the Vallelunga racing track for a decade through the time we established a “racing network” formed by professional drivers, teams, engineers, and team crews that gave us their contribution and feedback that helped us produce the finest aerodynamic, tire, and suspension models we could achieve.
Track accuracy is part of this formula. Thanks to laser-scan technology, we can reproduce each curb, bump, and slope exactly as it is. This accuracy, mixed with our car handling, results in one of the most genuine racing simulations out there.
Can you talk about how you approached designing both the inside and outside of the licensed cars in the game?
Massarutto: We are in a lucky position to be provided with CAD data for the majority of the cars we have worked on, which speeds up the modeling process; although we still heavily rely on photos, especially when it comes to interiors. Our pipeline to import and set up cars inside the engine has been reworked to suit what UE4 has to offer. We use few, but complex shaders to reduce individual draw calls and add depth to our materials [with things such as] paint, carbon fiber, alcantara, and other multi-layered materials, all [of which represent] a significant improvement from our previous implementations.
With fantastic visual effects that include terrific lighting, rain, bokeh effects, and more, Assetto Corsa Competizione looks amazing. Can you talk about how you achieved the game's superb visuals?
Senior Render Programmer Fabio Luchetta: We leveraged the engine deferred renderer. Effects like Screen Space Reflections (SSR) are very useful to get great reflections when the track is wet, but we also added some custom shaders to draw more realistic droplets on the car windows and bodywork, for example. And we optimized the use of real-time shadows. Because [our game] is a simulation, it has to cover all times of the day (the real race at Spa is 24 hours long), so we couldn’t use precomputed lighting. Shadows are usually quite demanding, so we tried to reach a good compromise between detail, resolution, and the amount of draw calls. For example, we would cast shadows from a limited number of lights when the race is set at night.
Can you elaborate on how the studio has incorporated the Assetto Corsa Competizione’s dynamic weather system and how that might affect gameplay?
Physics Developer Fernando Barbarossa: We use a stochastic model to simulate random weather conditions. The model simulates variable weather conditions by changing real-time cloud cover, precipitation, wind speed, and wind direction. The weather affects air density, road, and air temperatures. This influences car performance indicators such as braking power, grip, engine torque, and downforce. The randomly varying weather adds uncertainty to the race weekend, resulting in a more realistic and unpredictable experience where the sim racer needs to take into account many aspects to be competitive. Track behavior is dynamic, with rubber and marbles increasing with the number of cars on track. The marbles, which are small pieces of rubber detached from tires, affect the handling and they have audio and visual characterizations. Also, the wet level on tracks is fully dynamic and is influenced by rain intensity, sun, and temperature with the ideal line drying up faster due to car transit.
The game features realistic audio that captures the contextual sounds of cars as they progress through different areas of tracks. Can you talk about the work that went into implementing this?
Sound Designer Luca Sodano: Sound reflections are a highlight among the new aspects of the audio design in Assetto Corsa Competizione. You can hear your exterior engine sound bouncing on the track boundaries and its reverberation getting louder in tunnels or along the main straights, which is usually where there is the highest amount of structures that enhance this effect. The user experience is greatly improved as car sounds become more alive and dynamic. Technically speaking, the intensity of the sound reflection is calculated by certain invisible vectors that start from the car and bounce off of the track boundaries. It’s more or less like a sonar ping! We tested numerous solutions to come up with the best choice that strikes a balance between quality and resource usage.
Being a realistic racing simulator, can you talk about the work that Kunos Simulazioni is putting in to ensure that the game offers realistic steering wheel support?
Barbarossa: We try to simulate force feedback that feels genuine to the steering forces due to tire and suspension geometry. We do not add any fake effects to the force feedback to simulate the system as realistically as possible. A race car steering wheel provides a very different feeling compared to a normal road car due to different suspension geometries, higher caster angles, and tires.
Any direct input-based wheel is supported and configurable in Assetto Corsa Competizione, we offer a default button and axis configuration for all the commercial steering wheels, which allows a plug-and-play experience for new players.
Considering the original Assetto Corsa used a proprietary engine, what made UE4 a good fit for the sequel?
Massarutto: UE4 allowed us to achieve an impressive graphics quality, allowing top quality lighting effects, and rain/wet terrain simulation. It also paired very well with our proprietary physics engine. Although UE4 wasn’t designed specifically for racing games, we were able to push it to the limit to deliver the racing simulator we had in mind.
Thanks for your time. Where can people learn more about Assetto Corsa Competizione?
Massarutto: The best place to find out more about Assetto Corsa is our community forum, where our developers and users alike talk about the game features and content.