GDC is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

View, browse and sort the ever-growing list of sessions by pass type, topic, and format. All registered attendees will be able to build their personal schedule in the mobile event app, once live early 2022.

GDC Masterclass courses require a paid pass to attend. Class sizes are kept intentionally small and seats are limited to ensure every student receives one-on-one assistance from the instructor. Pass pricing per course varies, please review the passes and pricing page for more details and secure your spot today!

Adventures with Deferred Texturing in 'Horizon Forbidden West'

James McLaren  (Senior Principal Tech Programmer, Guerrilla)

Pass Type: All Access Pass, Core Pass - Get your pass now!

Topic: Programming

Format: Session

Vault Recording: TBD

Audience Level: Yes

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.


Attendees will gain an in depth knowledge of how a high performance compute based deferred texturing system can be constructed.

Intended Audience

Intermediate to experienced graphics programmers with an interest in deferred texturing, visibility buffers and compute.