3

Far Cry 4, Assassin's Creed Unity and War Thunder: …gamelabgraz.com/wp-content/uploads/2017/02/GDC_talk-summary... · Far Cry 4, Assassin's Creed Unity and War Thunder: Spicing

Embed Size (px)

Citation preview

Page 1: Far Cry 4, Assassin's Creed Unity and War Thunder: …gamelabgraz.com/wp-content/uploads/2017/02/GDC_talk-summary... · Far Cry 4, Assassin's Creed Unity and War Thunder: Spicing

Far Cry 4, Assassin's Creed Unity and War Thunder:

Spicing Up PC Graphics with GameWorks (Presented by

NVIDIA) by Alexandr Polischuk, Andrei Tatarinov, Tim

Tcheblokov, Anton Yudintsev

Author: Markus Müller

February 20, 2017

Tags: Far Cry 4, Assassin's Creed, NVIDIA, War Thunder, GameWorksTrack: GDC 2015 - ProgrammingUrl: http://www.gdcvault.com/play/1022389/Far-Cry-4-Assassin-s

Speakers: Alexandr Polischuk, Ubisoft; Andrei Tatarinov, NVIDIA; Tim Tcheblokov, NVIDIA;and Anton Yudintsev, Gaijin Entertainment

Abstract

The purpose of this talk is to get to know to some important components of the NVIDIA

GameWorks library. The �rst part of the talk comprises NVIDIA ShadowWorks and NVIDIA

PostWorks which are both used in Far Cry 4 and Assassin's Creed Unity, as well as NVIDIA

HairWorks and NVIDIA Godrays which are used in Far Cry 4. The second part of the talk

includes WaveWorks which is also part of the NVIDIA GameWorks library and how it was

modi�ed to �t best into the game War Thunder by Gaijin Entertainment.

1 Summary of Talk

GameWorks is a library introduced by NVIDIA and represents a collection of development andanalysis tools, as well as graphics and physics e�ects. Many PCs o�er developers a much morepowerful environment for their games therefore GameWorks helps them to add fancy features tomake their games look better. The following sections will explain the features which are coveredby the talk in more detail.

1.1 ShadowWorks

The ShadowWorks library is a collection of technologies that provide cinematic quality shadows inreal time and consists of HBAO+ and Advanced Soft Shadows. HBAO+ (Horizon-Based AmbientOcclusion+) is a state of the art screen-space ambient occlusion (SSAO) algorithm. HBAO+ isscalable and very cache friendly [2]. The following images show the di�erence between a scene inAssassin's Creed Unity without ambient occlusion compared to the same scene using HBAO+.

(a) Without Ambient Occlusion (b) With HBAO+

Figure 1: Comparison between HBAO+ and without using ambient occlusion in Assassin's CreedUnity [1]

1

Page 2: Far Cry 4, Assassin's Creed Unity and War Thunder: …gamelabgraz.com/wp-content/uploads/2017/02/GDC_talk-summary... · Far Cry 4, Assassin's Creed Unity and War Thunder: Spicing

Advanced Soft Shadows is implemented into ShadowWorks based on Percentage Closer Soft Shad-ows (PCSS) and is used to simulate more realistic shadows. In the real life, the edge of a shadowis very sharp if the receiver of the shadow is near to the occluder. However, the further away thereceiver gets from the occluder the penumbra of the shadow gets bigger and the shadow appearsblurrier. The following �gures show the di�erences between using advanced soft shadows andwithout using them.

(a) Without Advanced Soft Shadows (b) With Advanced Soft Shadows

Figure 2: Screenshots from Far Cry 4 to show the e�ects from Advanced Soft Shadows [1]

1.2 PostWorks

The NVIDIA PostWorks library contains di�erent post process technologies. One of them isTXAA. TXAA (Temporal Anti-Aliasing) is a �lm-style anti-aliasing technique which is speci�callydesigned to reduce temporal aliasing like crawling and �ickering seen in motion when playing games.

1.3 HairWorks

NVIDIA HairWorks is a real-time solution enabling the user to simulate and render fur to provide agenuinely interactive game experience. HairWorks is not only a library but also a content creationtool which means that the library has to be integrated into the engine as well as the content thatuses the tools. HairWorks is used in Far Cry 4 and the developers went through the followingsteps. At �rst, they made a proof of concept that HairWorks would be a good �t for Far Cry 4.The following images show the e�ects of HairWorks on a yak which appears in Far Cry 4.

(a) Yak - No HairWorks (b) Yak - With HairWorks fur

Figure 3: Screenshots from a Far Cry 4 animal to show the e�ects from HairWorks [1]

In the next step HairWorks was integrated into the engine by modifying the Far Cry 4 level editorto support HairWorks. After that, about 30 assets were created in total and added into the game.

1.4 Godrays

In the real world things can rarely be seen in a vacuum where nothing would exist between anobject and its observer. Thus, godrays can be detected in the real world and are the result ofvolumetric light scattering due to shadows in the atmosphere [3]. The NVIDIA Godrays librarygenerates realistically looking sun shafts and provides vast opportunities for tuning. In Far Cry4 the godrays are dependent on the daytime. In the morning and evening hours they are more

2

Page 3: Far Cry 4, Assassin's Creed Unity and War Thunder: …gamelabgraz.com/wp-content/uploads/2017/02/GDC_talk-summary... · Far Cry 4, Assassin's Creed Unity and War Thunder: Spicing

intense than at noon time. Godrays make a big di�erence in the image quality and the drasticchanges between turning them on and o� completely transform scenes in Far Cry 4.

1.5 WaveWorks

WaveWorks is also part of the NVIDIA GameWorks library and is integrated into the game WarThunder. WaveWorks enables developers to deliver cinematic quality simulations and rendering foropen oceans. It cascades the waves and they are not repeated. Because of the fact that WaveWorksonly renders open ocean areas some changes had to be made in order to �t best into War Thunder.In the game there also appear shores, rivers, and lakes where the waves look di�erent comparedto the open ocean. In the real-world, terrain is an obstacle for wind and ocean waves. In order todetect how much the terrain is an obstacle for waves the developers created an openness texture.The texture encodes the terrain in speci�c colors which represent the di�erent values of openness.To simulate shore waves the developers used Gerstner waves. To make these waves look less regularand more realistic, noise and energy loss were added. Furthermore, the terrain shading was alteredto make the sand on the shore look wet and re�ective.

2 Overview and Relevance

NVIDIA GameWorks helps developers to enhance their game graphics and to make their gameslook more realistic. It gives them access to innovative computer graphics, special e�ects, andphysics. Consequently, developers can create better games within a minimum amount of time.

Gameworks can be integrated into Unity and Unreal Engine which are todays leading gamedevelopment platforms. This can be achieved without modifying the internals itself and in Unity itis possible to integrate GameWorks by using the existing functionality for creating graphics plugins[5][4].

NVIDIA's GameWorks library is also used for science and research topics like real-time solidssimulations that can handle large plastic deformations [6].

3 References and Further Sources

[1] Alexandr Polischuk, Andrei Tatarinov, Tim Tcheblokov, and Anton Yudintsev, Far Cry4, Assassin's Creed Unity and War Thunder: Spicing Up PC Graphics with GameWorks(Presented by NVIDIA) by Alexandr Polischuk, Andrei Tatarinov, Tim Tcheblokov, AntonYudintsev, http://developer.download.nvidia.com/assets/events/GDC15/GEFORCE/FC4_ACU_WT_GDC15.pdf, last visited: 2017-02-19.

[2] NVIDIA Corporation, HBAO+ Explained, http://www.geforce.com/hardware/technology/hbao-plus/technology, last visited: 2017-02-16.

[3] Kenny Mitchell, GPU Gems 3, http://http.developer.nvidia.com/GPUGems3/gpugems3_ch13.html, last visited: 2017-02-20.

[4] NVIDIA Corporation, NVIDIA GameWorks and UE4, https://developer.nvidia.com/

nvidia-gameworks-and-ue4, last visited: 2017-02-20.

[5] Alex Dunn, NVIDIA GameWorks in Unity, https://developer.nvidia.com/content/

gameworks-unity, last visited: 2017-02-20.

[6] Nuttapong Chentanez, Real-time simulation of solids with large viscoplastic deformationy, SIG-GRAPH '16 ACM SIGGRAPH 2016 Real-Time Live!, Anaheim, California, Article No. 43,http://dl.acm.org/citation.cfm?doid=2933540.2933552, 2016.

3