For Horizon Forbidden West, Guerrilla Games switched from a commercial physics engine to Jolt Physics, an open-source physics engine that was born as a personal hobby project. By switching to this new engine, we saved memory, executable size and were able to double our simulation frequency while using less CPU time. This talk describes how we use a physics engine at Guerrilla, how our previous physics engine caused bottlenecks while streaming in data and while interacting with the multi-threaded game object update. Jolt was architected specifically to help solve these two problems and the talk explains two of the systems that made this possible.
Adventures with Deferred Texturing in 'Horizon Forbidden West
To accelerate its foliage and alpha tested geometry Horizon Forbidden West implements a novel loosely tiled deferred texturing system. A visibility buffer is drawn as a pre-pass followed by analysis and shading steps which run entirely in compute shaders. The use of compute shaders also provides extra flexibility that allows for the implementation of a software variable rate shading solution. Due to being able to run on the compute pipes on PS4 and PS5 it is able to overlap both the G-Buffer rendering and the rendering of cascaded shadow maps meaning that analysis and shading typically have very little overhead. This presentation will describe details of the system, and the optimizations and design choices made to integrate it into the Decima engine.