Lionhead On DX12 Features In Fable Legends

Author Photo
Oct 2, 2015
7Shares
Share Tweet Submit

While we were testing the Fable Legends DirectX 12 benchmark, we had the chance to ask Lionhead a couple questions about the DX12 features they have picked for the game (which will be the first DX12-only title).

Related NVIDIA Showcases GameWorks Flow Tech in DirectX 12 With Real-time Fire and Smoke Simulation

The review guide contained the following statement:

Lionhead Studios has made several additions to the engine to implement advanced visual effects, and has made use of several new DirectX 12 features, such as Async Compute, manual Resource Barrier tracking, and explicit memory management to help the game achieve the best possible performance.

This piqued our curiosity and we had to investigate. Here’s what we found out:

Related NVIDIA Unleashes GeForce 378.78 WHQL Game Ready Drivers – Boosts DirectX 12 Performance For GeForce Cards, Game Ready For Ghost Recon Wildlands
  • In your statement, you mentioned using Async Compute. Can you tell us how you’re using it in Fable Legends? 
  • Multi-engine is the official D3D12 term for that feature. We’re using it quite heavily across the scene, including dynamic GI compute shaders, GPU-based culling for instanced foliage, Forward Plus compute shaders (light gathering). In addition, all the foliage physics in the scene (bushes, grass, etc.) is simulated on the GPU that also runs concurrently with the graphics.
  • You’ve also mentioned using manual Resource Barrier tracking and explicit memory management. In your experience developing Fable Legends, which one proved to be more important in terms of raw performance gains?
  • The resource barrier tracking gave us some really significant wins in terms of performance. Fable Legends is a compute-shader heavy game, and D3D12’s Resource Barrier tracking features allow us to kick off large numbers of compute shader dispatches without creating stalls on the GPU between each one.

As a reminder, Fable Legends is powered by Epic’s Unreal Engine 4 and is currently in Closed Beta for PC and Xbox One; the Open Beta phase should start soon. It will be interesting to see what kind of DX12 features will be implemented by future UE4 titles; stay tuned for more coverage on DirectX 12 and its application in upcoming games.

Share Tweet Submit