Game Benchmarks stub

Fallout 4 Volumetric Lighting Benchmark – AMD & NVidia FPS

Posted on November 10, 2015

NVidia's implementation of volumetric lighting utilizes tessellation for light shafts radiation and illumination of air. This approach allows better lighting when light sources are occluded by objects or when part of a light source is obfuscated, but requires that the GPU perform tessellation crunching to draw the light effects to the screen. NVidia is good at tessellation thanks to their architecture and specific optimizations made, but AMD isn't as good at it – Team Red regularly struggles with nVidia-implemented technologies that drive tessellation for visual fidelity, as seen in the Witcher's hair.

When benchmarking Fallout 4 on our lineup of GPUs, we noticed that the R9 390X was outclassed by the GTX 970 at 1080p with ultra settings. This set off a few red flags that we should investigate further; we did this, tuning each setting individually and ultimately finding that the 970 always led the 390X in our tests – no matter the configuration. Some settings, like shadow distance, can produce massive performance deltas (about 16-17% here), but still conclude with the 970 in the lead. It isn't until resolution is increased to 1440p that the 390X takes charge, somewhat expected given AMD's ability to handle raw pixel count at the higher-end.

Further research was required.

We eventually realized that volumetric lighting could be the problem, given the tessellation focus, and decided to toggle the setting and conduct some in-game analysis of godrays and light illumination. Learn more about tessellation in this post, if unsure about what this word means.

This test isn't meant to be as complete as our Fallout 4 GPU benchmark or Black Ops III settings guide and specifically explores volumetric lighting's impact on FPS.

Our initial benchmark was conducted at night, so there's not nearly as much volumetric lighting going on as during daytimes. The sun, moon, and some ultra-bright light emitters will create godrays and interact voluminously with game elements. Volumetric lighting in Fallout 4 primarily consists of these outputs: Godrays and light shafts, radiation proliferated by reflective materials, and increased apparent depth of shadows.

How to Disable Volumetric Lighting in Fallout 4

We entered these commands into the console to establish a clean test environment:

> set gamehour to 11

> set timescale to 0

This locks our game time and sets the clock to late morning, when the sun interacted with our test environment (Diamond City) the best.

We then used these commands as necessary:

> gr 0 // disable godrays completely

> gr 1 // enable godrays

> gr debug 1 // wireframe godray render for analysis of godray “landing zones”

> gr debug 2 // show only godray illumination, so all objects and actors are lit only by godrays; global illumination and other light sources are offensive

Here's a pair of screenshots of the two debug modes:

godrays-wireframe

godrays-wf-only

The “godrays only” mode is extremely useful in understanding exactly why godrays are volumetric – even when an object isn't directly in the line of a beam, it will still receive light from illumination shed by that beam. Actors in the vicinity of reflective materials will receive some of the light from godrays, too, because volumetric light can bounce and proliferate when interacting with certain surfaces. We talk about this in more depth in our GDC 15 interview with Crytek, who explained physically-based rendering to us.

Tessellation is effectively the process of doubling triangles on graphics hardware for increased apparent detail, allowing more displacement or smoothing of surfaces. Tessellation also creates the appearance of a higher resolution surface and adds small bumps in surfaces, creating higher fidelity and depth. That's a generalization applied to tessellation in 3D objects, though the computations involved to tessellate light beams rely on the same part of the GPU.

With volumetric lighting through nVidia's Fallout 4 implementation, which uses GameWorks, the lighting is fed through tessellation instead of post-processing effects. Tessellated lighting lends itself to cooperation with occlusion, and is exactly why you can see the light pouring over the edges of a surface even when that surface physically blocks the actual light source.

Let's get rid of it.

Test Methodology

We tested using our 2015 multi-GPU test bench, detailed in the table below. Our thanks to supporting hardware vendors for supplying some of the test components.

NVidia's latest 358.91 Fallout 4 drivers were used for testing, including the Fallout 4 optimizations. The latest AMD Catalyst drivers (15.11 beta) were used for testing. Game settings were configured to "Ultra" with “ultra” overrides where not selected, "Medium," and “Low” presets at 1080p, 1440p, and 4K resolutions. Once we determined which settings provided a reasonable level of load for appropriate video cards, we forged forward testing those configurations on our suite of GPUs.

Each scenario was tested for 30 seconds identically, then repeated three times for parity. We tested in Diamond City, the first major township the player reaches. We found parts of Diamond City to produce highly intensive load, with a performance gap as wide as nearly 60% in some instances. This makes Diamond City a poorly optimized region of the game that represents a mixed load scenario; our test run begins with the camera pointed toward a heavily occupied region of the city, then moves around a much less intensive corridor. The result is a mixed GPU load that is 100% reproduceable and representative of real-world play experiences.

Our above video shows the course we used. This was chosen for its reproducibility and reliability during test. Benchmarks which do not precisely emulate our course taken will vary in results, depending on what area of the game they were executed.

GN Test Bench 2015NameCourtesy OfCost
Video Card

This is what we're testing!

--
CPUIntel i7-5930K CPUiBUYPOWER
$580
MemoryKingston 16GB DDR4 PredatorKingston Tech.$245
MotherboardEVGA X99 ClassifiedGamersNexus$365
Power SupplyNZXT 1200W HALE90 V2NZXT$300
SSDHyperX Savage SSDKingston Tech.$130
CaseTop Deck Tech StationGamersNexus$250
CPU CoolerNZXT Kraken X41 CLCNZXT$110

Average FPS, 1% low, and 0.1% low times are measured. We do not measure maximum or minimum FPS results as we consider these numbers to be pure outliers. Instead, we take an average of the lowest 1% of results (1% low) to show real-world, noticeable dips; we then take an average of the lowest 0.1% of results for severe spikes.

fallout-4-volumetric-lighting-1080

fallout-4-volumetric-lighting-1440p

First off, the above FPS results are not comparable to our Fallout GPU benchmark, which conducted testing under different time of day and weather conditions.

The 390X still trails the 970 at 1080p when both devices disable godrays – probably an optimization issue in the drivers or game – but we see a measurable performance gain for each device by toggling god rays. The 390X moves from 71FPS to 80FPS average and increases its 0.1% bottom line to 44 from 36 by disabling godrays. The average FPS gain is about 12%. The 970 moves from 81 to 87 FPS – a smaller 7% gain, but still noticeable. The 970 retains its lead.

At 1440p, the 390X still runs ahead just from the additional pixel workload bogging down the 970.

What we found, though, is that even disabling many of the volumetric lighting effects does not inherently grant AMD a performance advantage. It closes the gap, but doesn't eliminate it.

Hopefully that should answer a lot of the questions we've gotten about volumetric lighting performance! Should anyone have other testing requests, we'll try to get around to them – though the Steam Link is currently occupying our bench.

- Steve "Lelldorianx" Burke.