Ubisoft Talks AC4 Tech – AnvilNext Engine Features, Global Illumination, DX11.2, AMD’s Mantle

Assassins Creed IV Black Flag v4

A couple of days ago, we had the pleasure to interview Ubisoft’s Luc Poirier, team lead for the rendering team for AC4 at Ubisoft Montreal. Luc shared some interesting tech information about Assassin’s Creed IV: Black Flag, and detailed some of the features that have been implemented in the next iteration of the AnvilNext engine. Luc also talked about Windows 8 and DX11.2, as well as AMD’s upcoming API, Mantle. Special thanks to Sylvain Trottier (Associate Producer) and our country’s distributor who also helped with this interview. Enjoy the interview after the jump!

DSOGaming: Before we begin, please introduce yourselves to our readers.

Luc Poirier: My name is Luc Poirier, and I am the team lead for the rendering team for AC4 at Ubisoft Montreal. I have been working as a rendering programmer in the video game industry since 2006.  Before that, I was also working as a rendering programmer, but in the video editing industry.

At Ubisoft Montreal, my team was responsible for developing the core rendering technology for this new game.  Ubisoft Singapore were responsible of the ocean technology, while Ubisoft Kiev took care of the PC version of the game.

DSOGaming: Assassin’s Creed IV: Black Flag will be powered by the AnvilNext engine. What are the key differences between this version and the one that was used in Assassin’s Creed 3?

LP: The biggest difference is that AnvilNext now supports both the current generation (PS3, Xbox360) and the next generation (PC, PS4, XboxOne) of consoles.  We modified the engine to add support for per-generation assets.  It is now possible, for example, for an artist to provide a more detailed mesh for the next gen version, and a less detailed one for the current gen.  The same thing can be done for particles emitters, special effects, etc.

We also improved AnvilNext’s lighting and atmospheric effects.  We started by rewriting a large part of our lighting system to support dynamic global illumination. Then, we implemented a physically based volumetric fog that reacts to local lights.  We also added a new 3D rain system that renders each raindrop individually using thousands of lit particles that can collide with the environment.  This rain system also generates dynamic ripples that react to the wind.

We also added new features to AnvilNext, like motion blur, support for 3D foliage, god rays, translucency and screen space reflection.  Finally, we upgraded some existing features like the depth of field and the particles renderer.

The ocean was also improved a lot by the team at Ubisoft Singapore.  They increased the visual quality, added realistic simulation, while optimising it.  They also added the underwater experience.

DSOGaming: One of the biggest issues we’ve encountered in AC3 was its inability to take advantage of more than three CPU cores. That problem was also present in Splinter Cell: Conviction. However, Blacklist pleasantly surprised us with its CPU multi-core support (game runs better than its predecessor and there were performance differences between tri-cores and quad-cores). Will Assassin’s Creed IV be better optimized on the PC than AC3?

LP: There was a major optimisation pass that was done on the engine, not just for the PC, but for every platform.  The scheduler used for the rendering was rewritten from the ground up.  In AC4, the engine will use all the cores it needs until it sees that using more cores brings no more gain.  So, yes we should expect better performance on PC than AC3, especially on DX11 hardware.

DSOGaming: Can you confirm whether the PC version will be identical to the next-gen version? If yes, can we expect any PC exclusive features that won’t be present in the next-gen console versions (apart from DX11 and TXAA)? If not, what will be the differences between the PC and the next-gen console version?

LP: All the next gen features will be available on PC.  On top of that, the team at Ubisoft Kiev worked on several PC specific features, like improved HBAO, MSAA, contact hardening soft shadows and improved god rays.  The UI has been updated for the PC version.  Also, Nvidia card owners will have access, like you mentioned, to TXAA, but also to the GeForce Experience: graphics options will be automatically adjusted in accordance to the user GPU and machine.

Also, as usual, the PC version will be scalable, so the user with an older GPU will be able to disable some features to make the game run smoothly on his hardware.

DSOGaming: What are the key tech features of Assassin’s Creed IV: Black Flag, and what is the one feature that you are really proud of?

LP: One of the key features of the game is the seamless world.  Unless you enter one of the three major cities or some special side quests, you will not see any loading screen.  You can go from exploring land to exploring sea to boarding without interruption, which really helps the immersion.

The dynamic navmesh technology developed by the AI team is also very impressive.  It’s used during the boarding sequences to make sure that you can seamlessly freerun from your ship to the enemy ship.

Personally, what I am the most proud of on the rendering side is how everything we have done works well together.  For example, when you are in the middle of a huge storm, the ocean, the volumetric fog, the 3D rain, the ripples, the lighting, the special effects, all come together and complement each other very well, and it looks amazing.

DSOGaming: Assassin’s Creed IV: Black Flag will support tessellation. Have you experimented with it (adaptive tessellation) in order to eliminate the pop-up/pop-in of distant objects?

LP: We worked on tessellation for a while (especially on the ocean) and in the end, the team did such a great job in terms of look and feel and performance of the ocean that adding tessellation did not bring anything more to the game, so we decided not to use it.  This allowed us to have a single rendering technique for the ocean across all platforms.  The only place where tessellation is used is in the improved god rays on PC.

DSOGaming: Can you share more details about your Global Illumination solution?

LP: Our Global Illumination is based on previous work that was done internally at Ubisoft (deferred radiance transfer volumes), but we improved it greatly. Using the navmesh, we automatically populate our world with thousands of probes.  For each probe, we then compute the irradiance for 8 different time of the day.  Those computations are done on the build machine GPU, so they are really fast: we can compute thousands of probes per minute. At runtime, on the player machine, we then interpolate these data to get the proper bounce lighting for a given time of day, world position and weather.  This bounce sun lighting is then combined with ambient occlusion and sky lighting to achieve a full indirect lighting and a Global Illumination solution.  This system works on both current gen and next gen.

DSOGaming: What kind of PC systems will players need to enjoy Assassin’s Creed IV (60fps at 1080p)? Any estimated PC minimum requirements?

LP: The minimum requirements are:

  • Operating System: Windows Vista SP2 or Windows 7 SP1 or Windows 8 (both 32/64bit versions)
  • Processor:  Intel Core2Quad Q8400 @ 2.6 GHz /  AMD Athlon II X4 620 @ 2.6 GHz
  • RAM: 2GB for Windows Vista, Windows 7, Windows 8
  • Video card:   Nvidia GeForce GTX260 or AMD Radeon HD 4870 (512MB VRAM with Shader Model 4.0 or higher)
  • DirectX: DirectX June 2010 Redistributable
  • Sound: DirectX Compatible Sound Card with latest drivers
  • Peripherals: Windows-compatible keyboard and mouse required, optional gamepad controller

The recommended configuration is:

  • Operating System: Windows Vista SP2 or Windows 7 SP1 or Windows 8 (both 32/64bit versions)
  • Processor:  Intel Core i5 2400S @ 2.5 GHz or better / AMD Phenom II x4 940 @ 3.0 GHz
  • RAM: 4GB or more
  • Video card: Nvidia GeForce GTX470 or AMD Radeon HD5850(1024MB VRAM with Shader Model 5.0) or better
  • DirectX: DirectX June 2010 Redistributable
  • Sound: DirectX Compatible Sound Card with latest drivers
  • Peripherals: Windows-compatible keyboard and mouse required, optional gamepad controller

The supported Video Cards at Time of Release will be:

  • Nvidia GeForce GTX260 or better, GT400, GT500, GT600, GT700 series
  • AMD Radeon HD4870 or better, HD5000, HD6000, HD7000 series

With this config you will be able to enjoy the game at 1080p 30fps.  Stronger system will bring you up to 60 fps.  For example, at my desk I have a GTX670 and I play at 60 fps.

DSOGaming: All previous Assassin’s Creed titles suffered from mouse smoothing/acceleration side effects on the PC. Will there be an option in AC4 to toggle mouse smoothing?

LP: No, we only have options to support mouse sensitivity and mouse inversion.

DSOGaming: What’s your opinion about Windows 8 and DX11.2? Have you experimented with DX11.2 and can we expect your future games to natively support 64-bit systems?

LP: I think that some features of DX11.2 will make our life easier (for example, a unified way to use tiled resources would be welcome), allowing us to focus on other aspect of the game.  It’s a nice incremental upgrade to DX11.  On AC4, we did not have time to investigate DX11.2, but we made sure that it was running correctly on Windows 8.

To be able to reach as much fans as possible, we decided to still use a 32-bits executable, but yes it’s only a question of time before we switch completely to 64-bits executable.

DSOGaming: AMD recently revealed Mantle, a low-level API for its GCN-architectured graphics cards. What’s your opinion on this and will you support it in your future games?

LP: On one hand, we are very excited by the Mantle API.  Since we are used to low-level API because of our work on consoles, it is not something that we are afraid of.  We are confident that we could use it to deliver significant performance boost to our games.
On the other hand, we are a little bit wary about it, because it would mean another renderer to maintain.  The more renderers we have, the more we have to split our time between each of them, the less time we have to improve the visual look and performance of our game. So, it’s really a double-edged sword: we will have to analyse the pros and cons before taking a decision.

DSOGaming: Thank you very much for the interview, any last words you want to share with our fans?

LP: I know it’s cliche, but we had a lot of fun making this game. I hope that our fans will have as much fun playing it!