Johan Andersson presented on graphics and rendering techniques for Battlefield 3 and future DICE games. Key points included the focus on PC as the lead platform using DX10/11, major advancements in areas like animation, rendering, lighting, destruction and streaming, and an emphasis on creating simple yet powerful workflows for developers. He discussed techniques for objects, lighting, effects, terrain and post-processing. Graphics are designed to serve aesthetics and gameplay.
5. โบ 64-player multiplayer โ Singleplayer โ COOP
โบ Landscape, Urban and In-door environments
โบ PC is lead platform. DX10/DX11 only!
6. โบ Developed for Battlefield 3 and future DICE + EA games
โบ Major advancements in animation, rendering, lighting,
destruction, landscapes and streaming
โบ Big focus on creating simple to use & powerful workflows
13. We stream almost all meshes & textures
โบ More variation
โบ Increased quality
โบ Shorter loading times
โบ Reduced memory requirements
โบ Freedom for level designers & artists
14. Streaming based on camera Per multiplayer level:
position โบ 200 โ 250 MB of streamed object meshes
โบ No blurry textures behind you โบ 1.3 โ 1.5 GB of streamed object textures
DX11 concurrent creates = no stalls! TEXTURE QUALITY setting sets
โบ Worked closely with Microsoft and the size of the texture pool:
IHVs โบ Low: 150 mb
โบ Loading / creation is handled by separate โบ Medium: 200 mb
thread โบ High: 300 mb
โบ Ultra: 500 mb
15. Damavand Peak in ULTRA
โบ 4000 -> 900 draw calls!
Instance objects of the same type
โบ DX10/DX11 required
โบ Major CPU performance optimization
โบ Can instance all types of meshes!
16. LIGHTING Point lights
Spot lights
Emissive particles
Lensflare
s
Specular highlights
17. HDR rendering & lighting
โบ Dynamic exposure to adapt to
both dark and bright areas
โบ True HDR bloom = natural part
of the HDR rendering pipeline
20. Scene is rendered to a gbuffer, then lit
Enables massive lighting environments
โบ 100s of large dynamic light sources on screen
โบ Destructible & animated lights
โบ Lighting cost relative to how many pixels are lit not objects
โบ Highly flexible lighting
Requires lots of GPU memory & bandwidth
โบ 1080p with 4x MSAA = 158 mb gbuffer
22. Tile-based lighting using DX11 CS
โบ Reduces amount of pixels lit
โบ Fixed low memory bandwidth
โบ Great performance with huge amount
of light sources
โบ Esp. when using MSAA
31. EFFECTS
Essential that particles fit in &
1000s of small and big particles interact with the environment
โบ Sprite particles โบ It is all about the lighting (again!)
โบ Mesh particles
32. Particle shadows!
โบ On ground & opaque objects
โบ Disabled when
ShadowQuality = Low
Alpha-tested debris
โบ Gives sharp details
Soft particles
โบ Soft fade instead of hard z-test
47. Terrain virtual texture atlases
Virtual texture tiles
โบ Regenerated when moving
โบ 256x256 resolution
โบ Compressed to DXT5 in
real-time on the GPU
48. Terrain Decoration
โบ Grass
โบ Rocks
โบ Debris
โบ Small bushes
Procedurally instanced
โบ Based on the terrain materials
โบ Highly scalable
85. LOW = lowest possible
โบ Similar visuals to consoles, some components disabled
โบ Still contains the essential visuals to not be unfair in MP
โบ Minimum: Geforce 8800 GT 512 MB RAM
MEDIUM = good perf
โบ Most important visual features enabled
HIGH = what the game is designed for
โบ All major features on except for MSAA (if you have DX11 card)
โบ Recommended: Geforce 560 TI or better
ULTRA = highest possible
โบ Intended primarily for multi-GPU machines for 60+ fps
86. Antialiasing
โบ Because everybody hates aliasing
Multiple options:
โบ Deferred: MSAA 2x, 4x
โบ Post: FXAA low, medium, high
โบ Or both!
87. Selective supersampling for MSAA
โบ Detect edges with the most aliasing
โบ Major GPU performance improvement
88.
89. Built-in FPS meter
โบ Render.DrawFps 1
โบ Average FPS over last
second
In-game Console โบ FRAPS-style
โบ Toggle with key above TAB
โบ Just a few commands (prevent cheating)
Performance overlay
โบ Render.PerfOverlayVisible 1
โบ Shows CPU & GPU time graph in ms/f
โบ See spikes / unstable performance
โบ See if CPU bound (green below yellow)
91. Real 3D stereo rendering in BF3
โบ Built-in full support in Frostbite 2
โบ Render complete frame for each eye (in parallel!)
โบ Works correctly with transparent surfaces and effects
โบ Looks great! Requires a good PC
Been working closely with Nvidia to add the support
Play it here at GeforceLAN!
โบ Available in game soon after Retail release
92. BF3 looks sweet! ๏
โบ Marriage of massive Battlefield gameplay with great visuals & style
โบ Made for your PC
The future for PC games is bright!
โบ We have many more Frostbite 2 games in development ๏
โบ Youโll start seeing more devs do proper PC games again
94. Email: repi@dice.se
Blog: http://repi.se
Twitter: @repi
Battlelog: repii
For more DICE talks: http://publications.dice.se
Editor's Notes
Windows Vista & Windows 7 only
Such as Need for Speed: The Run
Look at this picture for a second. It does look pretty good right? But what is it that makes it look good? Is it the lighting, is it the textures? There are many individual graphics components here that look great but is the sum of all of those parts together with a very specific art direction of the scene that makes this look great instead of of โjust goodโ, it is the asthethics of the entire picture that looks great
- Poor graphics but great Aesthetics is fine- Poor aesthetics but great graphics techniques suck- Graphics help to deliver & empower our aesthetics- Graphics is a key enabler of gameplay
Only possible in DX10/DX11
BC2 didnโt have any indirect lighting / bouncing
BC2 didnโt have any indirect lighting / bouncing