ebook img

to the critically acclaimed Assassin’s Creed game PDF

95 Pages·2014·9.64 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview to the critically acclaimed Assassin’s Creed game

1 Assassin’s Creed 4 is a historical action-adventure video game set in seventeenth century, golden age of piracy and placed in vast open world of Caribbean Sea area. It is in fact the sixth installment to the critically acclaimed Assassin’s Creed game franchise, but the new setting and historic period presented several new challenges: • Multiple environment types • Small islands and non-habited beaches • Densely populated cities • Deep jungles • Open world of Caribbean Sea • Dynamically changing and unpredictable tropical weather and various atmospheric phenomena – rain storms, mist, fog, god rays • Very small number of artificial light sources and need to achieve interesting and complex lighting using only natural light Our game targeted six different hardware platforms, including the next-generation consoles - Microsoft Xbox One and Sony PlayStation 4. I’m going to cover what we achieved using new capabilities and available power of this hardware, while still maintaining consistent art direction between all the target platforms. 2 I’m going to cover the new features that became possible with new hardware and talk about optimizations for the next gen hardware: - [!] Global illumination algorithm– Deferred Normalized Irradiance Probes – it started as a next-gen only and dynamic technique, but we ended implementing and using partially static technique that performed very well also on the current generation consoles - [!] Volumetric fog – we developed a novel algorithm using compute shaders and volumetric textures to simulate light transport in participating media and various light scattering and atmospheric phenomena - [!] Screen Space Reflection - PS4/Xbox One optimizations to the screen space raytraced reflections technique - [!] In final part of the presentation, I’m going to talk about GCN GPU architecture featured on Xbox One and PlayStation 4 3 Global Illumination 4 Global Illumination We knew that ambient lighting was the weakest part in all of the AC games - we had flat, almost unidirectional lighting that didn’t vary much in brightness between various locations (due to low-dynamic range of rendering pipeline we couldn’t have played with it too much without creating pitch-black or glowing spots) and didn’t vary at all in color. Since the beginning of working on Assassin’s Creed 4 we knew we need some kind of Global Illumination solution. We tried prototyping multiple next-gen only, real-time solutions and algorithms, but were not satisfied with the result. They either were too slow, had too many artifacts (like temporal instability or light-leaking) or simply didn’t give quality good enough to plausibly reproduce complex lighting of for example small alleys of towns like Havana, Kingston or Nassau. We realized that we need and want to use some technique that pre-bakes some data and applies it in the runtime, but how to manage to cope it with dynamic time of day and multiple weather presets? 5 Deferred Normalized Irradiance Probes Key observations: - Under sunny weather usually most perceived indirect lighting comes from main light source - We can easily split indirect lighting from sky and it’s bounces from main light component – techniques existing in our engine (like World Ambient Occlusion and SSAO) are enough to provide shadowing information - Main light trajectory not dependent on weather preset – only light color and strength depends on it - We can factor out light color and intensity from light transfer functions - For a single GI diffuse-only bounce we can precompute and store “some” information based only on: - Albedo - Normals - Shadowing information 6 7 8 Our technique was simple and divided in two parts 1. [!] Offline: 1. We use GPU cubemap capture and GPU convolution to calculate irradiance for four basis vectors. 2. GPU baker was very efficient as albedo and normals do not change with dynamic time of day, only shadowmaps. We reused big resolution shadowmaps for whole sector of 64x64 meters. 3. World has 2.5D structure so we stored information in 2D textures that could be compressed and later blittedusing GPU 2. [!] Runtime 1. On the GPU we blend between 2 key framed hours, de-normalize the data for given time of day and weather preset and as final result get proper irradiance of main light bounce. 2. We assume that GI information is valid only for distance near the navmesh, so we blend it out with height according to navmesh information. 3. We combine indirect bounced lighting stored in the GI with indirect sky lighting and the AO in “ambient” shader 9 Old AC3 technique – just the ambient cube. (screenshot doesn’t have the AO part, just pure ambient lighting) Screenshot from around 7-8PM, because of very low sun elevation this part of town is completely in shadow. Effect – uninteresting, artificial look. Loss of almost all normal mapping and lighting variety. It is also too dark, but brighter values would result in even flatter look. 10

Description:
Assassin’s Creed 4 is a historical action-adventure video game set in seventeenth century, golden age of piracy and placed in vast open world of Caribbean Sea area.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.