In the Crossout “Supercharged” update, which will be released on October 25, 2022, a significant improvement will appear in our render. We have added to the lighting model the calculation of indirect, or in other words — Global Illumination.
Up to this point, simplified lighting algorithms from the environment were used in our render. They accurately took into account direct light from light sources, and indirect light was modeled approximately using a pre-calculated diffuse cubemap on the level. Thanks to the refinement and implementation of the “Scalable Global illumination” technology from the Dagor Engine, which is used by our publisher Gaijin Entertainment, it has become possible to simulate indirect lighting much more accurately.
Now the indirect propagation of light is simulated taking into account the surrounding geometry, so that in addition to direct light, reflected and scattered light from various surfaces and extended light sources (sky, surfaces that emit and reflect light, shading from massive objects and buildings, etc.) will appear. Such an improvement noticeably improves the quality of the image in poorly lit and completely shadow-covered areas — it will become more voluminous and textured, and reflected incident light (reflex) from surrounding objects will also appear.
In addition to updating the global illumination system, the mechanism for rendering shadows and reflections was also improved, and SSCS (Screen Space Contact Shadows) and SSLR (Screen Space Local Reflections) techniques were implemented. Both effects work according to similar principles — we launch a ray for each pixel in the screen space and try to find its intersection with objects in the frame, which are described by the “depth” of the scene. And, as a result, It turns into some kind of ray tracing!
In the case of contact shadows, the ray is launched in the direction of the light source for a very short distance near the camera, and for many tens of meters on the horizon. This allows to draw shadows for small objects near the observer (such as stones, grass, etc.) and for giant mountains and rocks in the distance, complementing and improving the classic shadow rendering technique, as well as saving computer resources (for example, we don’t need to prepare additional information on the CPU because the data about the depth of the scene is enough).
With updated local reflections, we replaced the previously used SSPR technique, which required additional calculations on the CPU, and also had a number of limitations, such as: the number of reflective surfaces on the screen, the ability to draw reflections only on plain surfaces, as well as not entirely true reflections for water surfaces. The new SLR technique is completely devoid of these disadvantages, and now you can draw honest reflections for all types of surfaces, in any configurations! The algorithm repeats the logic of contact shadows, but this time we let a long ray in the direction of the intended reflection.
Both techniques work only in conjunction with MSAA temporal anti-aliasing, or the most advanced types of smoothing, such as NVidia DLSS or AMD FSR 2.0. This is due to the technical nuances of the implementation of techniques that require accumulating the result of the algorithms for several frames to achieve the highest quality and optimal performance. Both technologies fill the picture with lots of details, complementing the work of the updated Global illumination system.
In update 0.14.0, the image post-processing stage was improved, and new effects were added. They simulate the imperfection of photo and video equipment, bringing the final image closer to a realistic one with a small expenditure of computer resources.
The effect of Motion blur appeared on the battlefields of Crossout. It is designed to make the scene more dynamic and make the gameplay smoother and more enjoyable. We have carefully calibrated the effect to add cinematography and convey the feeling of speed in the best way, while not overshadowing the gaming experience in battles. The player will be able to independently adjust the blur intensity in the graphics settings.
In addition, the Lens Flare effect was added to the game — glare, simulating the refraction of light rays in the camera lens. This effect is used for a more natural display of bright light sources, creating complex-shaped glare that is characteristic of the lenses of any optical camera. Vignetting also allows you to reproduce the effect of shading from the camera aperture along the edges of the image, which adds expressiveness to the frame, giving it an artistic look and placing light accents.
The Bloom effect has been completely reworked. Previously, we used a simple technique of scaling the scene image using contrast — this gave a very approximate result of low quality and low resolution, in most cases the bloom effect was generally invisible. Now the image is being prepared taking into account the camera exposure, and then several stages of Gaussian blur are applied with varying degrees of importance. Thanks to careful optimization and the use of modern techniques, we get very cinematic highlights of different textures (from micro-glare of wet surfaces to bright flashes from explosions) for about the same performance cost. You may notice how armored cars in the rays of the sun now give pleasant photorealistic highlights from chrome and painted vehicle parts.
That’s all for today. Next week we plan to release one more part of the devblog which will be devoted to the major audio visual update for Crossout. Stay tuned!