Abstract: The first half of the talk will present the GPU-driven rendering pipeline of Assassin's Creed Unity – co-developed by multiple teams at Ubisoft Montreal – that was designed to efficiently render the game’s complex scenes, containing many highly modular buildings and characters. After a brief introduction, we will describe the core of the pipeline, which supports per-material instance batching instead of the more traditional per-mesh batching. We will then show how this can be combined with mesh clustering to obtain more effective GPU culling, despite coarser draw call granularity. Additional techniques such as shadow occlusion culling and pre-calculated triangle back-face culling will also be discussed. In the second half of the talk, we will introduce the RedLynx GPU-driven rendering pipeline: a `clean slate’ design that builds on the latest hardware features, such as asynchronous compute, indirect dispatch and multidraw. Our aim from the outset was to support heavily populated scenes without CPU intervention, using just a handful of indirect draw calls. In practice this allows us to render hundreds of thousands of independent objects with unique meshes, textures and decals at 60 FPS on current console hardware. We will go into of all the details on how we achieve this, including on our novel culling system, as well as virtual texturing, which is an integral part of the pipeline. Finally, to wrap up the talk we will look at how our pipelines could evolve in the future, especially with upcoming APIs such as DirectX 12.