SlideShare a Scribd company logo
1 of 95
Johan Andersson, Rendering Architect, DICE
› 64-player multiplayer – Singleplayer – COOP
› Landscape, Urban and In-door environments
› PC is lead platform. DX10/DX11 only!
› 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
http://www.penny-arcade.com/patv/episode/graphics-vs.-aesthetics




Graphics exists to serve Aesthetics (and Gameplay)!
Effects
Objects             Lighting                     Effects




          Terrain              Post-processing
OBJECTS




Example of objects:
 › Gameplay: Characters, Weapons, Vehicles
 › Environment: Trees, Bushes, Rocks
 › Man-made: Buildings, Fences, Containers
 › Effects: Debris, Destruction
Levels can have 10000+ objects
 › Requires efficient & scalable handling
 › Parallel rendering & simulation
 › Occlusion culling
 › LOD & distance culling
 › Mesh & texture streaming
 › Instancing
We stream almost all meshes & textures
 › More variation
 › Increased quality
 › Shorter loading times
 › Reduced memory requirements
 › Freedom for level designers & artists
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
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!
LIGHTING                       Point lights
Spot lights
                           Emissive particles
              Lensflare
              s




                                   Specular highlights
HDR rendering & lighting
 › Dynamic exposure to adapt to
     both dark and bright areas
 ›   True HDR bloom = natural part
     of the HDR rendering pipeline
No Bloom
Bloom
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
Normals   Smoothness




Diffuse   Specular
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
Final picture
Diffuse light
Diffuse light
Specular light
Final picture
Indirect/bounced light    No indirect/bounced
                                  light




         Indirect light            No indirect light
Indirect light   No indirect light
Spotlight shadows
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
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
Particle shadows = on
Particle shadows = off
Volumetric particle lighting
 › Each particle is lit by all lights
 › Fit into all light environments
 › Automatic!
Particle lights
 › Light up both themselves and
   surrounding surfaces
Particle lighting
Shadows on particles = on




Shadows on particles = off
TERRAIN




Vast view distances
 › High-res streamed heightfields
 › Per-pixel normalmaps
 › DX11 tessellation &
   displacement mapping
Normal mapped terrain
Displacement mapped terrain




       Requires DX11 GPU
        › Terrain Quality set to
          HIGH or ULTRA
Procedural virtual texturing
 › Increased quality & variation
 › Improved performance
 › Longer view distances
Terrain virtual texture atlases




                                  Virtual texture tiles
                                   › Regenerated when moving
                                   › 256x256 resolution
                                   › Compressed to DXT5 in
                                     real-time on the GPU
Terrain Decoration
 › Grass
 › Rocks
 › Debris
 › Small bushes
Procedurally instanced
 › Based on the terrain materials
 › Highly scalable
Terrain Decoration = Off
Terrain Decoration = Low
Terrain Decoration = Medium
Terrain Decoration = High
Terrain Decoration = Ultra
Terrain Decoration = Low
POST-PROCESSING



                  Post effects:
                   › Bloom
                   › Filmic Tonemapping
                   › Motion blur
                   › Depth of field
                   › Vignetting
                   › Screen glare
                   › Blur
                   › SSAO/HBAO
                   › Color grading
                   › Film grain
                   › Antialiasing
Ambient Occlusion
 › Key visual cue to ground objects




                                      SSAO - Super cheap effect
                                       › No extra memory cost
                                       › Used on the consoles and MEDIUM
Ambient Occlusion
 › Key visual cue to ground objects




                                      HBAO - Much improved since BC2
                                       › Nvidia & DICE collaboration
                                       › Wider filter & more detail
                                       › Special temporal noise filtering
No AO
SSAO
HBAO
Motion blur
Color grading
Blur + Vignette + Desaturation + Blood
SCENE BREAKDOWN
Step 1 - Terrain
Step 2 – Composite Meshes
Step 3 – Rigid Meshes
Step 4 – Foliage
Step 5 - Decals
Step 6 – GBuffer
Normals
Step 7 – GBuffer Specular
Step 8 – GBuffer Smoothness
Step 9 – GBuffer Sky Visibility
Step 10 – Sky & Indirect light
Step 11 – Sun Light
Step 12 – Local Lights
Step 13 – Combined lighting & albedos
Step 14 - Sky
Step 15 – Atmospheric Scattering
Step 16 – Lensflares & Glare
Step 17 – Bloom (tinted)
Step 18 – Final color grading
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
Antialiasing
 › Because everybody hates aliasing
Multiple options:
 › Deferred: MSAA 2x, 4x
 › Post: FXAA low, medium, high
 › Or both!
Selective supersampling for MSAA
 › Detect edges with the most aliasing
 › Major GPU performance improvement
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)
3 sec




        30 fps line
        60 fps line
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
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
And you for listening!
Email:     repi@dice.se
   Blog:      http://repi.se
   Twitter: @repi
   Battlelog: repii




For more DICE talks: http://publications.dice.se
Shiny PC Graphics in Battlefield 3

More Related Content

What's hot

Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
Tiago Sousa
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3
guest11b095
 
Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based Rendering
Electronic Arts / DICE
 
A Bizarre Way to do Real-Time Lighting
A Bizarre Way to do Real-Time LightingA Bizarre Way to do Real-Time Lighting
A Bizarre Way to do Real-Time Lighting
Steven Tovey
 
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
Johan Andersson
 

What's hot (20)

Destruction Masking in Frostbite 2 using Volume Distance Fields
Destruction Masking in Frostbite 2 using Volume Distance FieldsDestruction Masking in Frostbite 2 using Volume Distance Fields
Destruction Masking in Frostbite 2 using Volume Distance Fields
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
 
Secrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologySecrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics Technology
 
Stochastic Screen-Space Reflections
Stochastic Screen-Space ReflectionsStochastic Screen-Space Reflections
Stochastic Screen-Space Reflections
 
Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016
 
Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)
 
Screen Space Reflections in The Surge
Screen Space Reflections in The SurgeScreen Space Reflections in The Surge
Screen Space Reflections in The Surge
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
HPG 2018 - Game Ray Tracing: State-of-the-Art and Open Problems
HPG 2018 - Game Ray Tracing: State-of-the-Art and Open ProblemsHPG 2018 - Game Ray Tracing: State-of-the-Art and Open Problems
HPG 2018 - Game Ray Tracing: State-of-the-Art and Open Problems
 
Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based Rendering
 
Light prepass
Light prepassLight prepass
Light prepass
 
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
 
A Bizarre Way to do Real-Time Lighting
A Bizarre Way to do Real-Time LightingA Bizarre Way to do Real-Time Lighting
A Bizarre Way to do Real-Time Lighting
 
Rendering Tech of Space Marine
Rendering Tech of Space MarineRendering Tech of Space Marine
Rendering Tech of Space Marine
 
Lighting the City of Glass
Lighting the City of GlassLighting the City of Glass
Lighting the City of Glass
 
Graphics Gems from CryENGINE 3 (Siggraph 2013)
Graphics Gems from CryENGINE 3 (Siggraph 2013)Graphics Gems from CryENGINE 3 (Siggraph 2013)
Graphics Gems from CryENGINE 3 (Siggraph 2013)
 
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
Terrain Rendering in Frostbite using Procedural Shader Splatting (Siggraph 2007)
 
Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1
 
Terrain in Battlefield 3: A Modern, Complete and Scalable System
Terrain in Battlefield 3: A Modern, Complete and Scalable SystemTerrain in Battlefield 3: A Modern, Complete and Scalable System
Terrain in Battlefield 3: A Modern, Complete and Scalable System
 

Viewers also liked

High Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in FrostbiteHigh Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in Frostbite
Electronic Arts / DICE
 
Executable Bloat - How it happens and how we can fight it
Executable Bloat - How it happens and how we can fight itExecutable Bloat - How it happens and how we can fight it
Executable Bloat - How it happens and how we can fight it
Electronic Arts / DICE
 
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
Johan Andersson
 

Viewers also liked (20)

Rendering Battlefield 4 with Mantle
Rendering Battlefield 4 with MantleRendering Battlefield 4 with Mantle
Rendering Battlefield 4 with Mantle
 
4K Checkerboard in Battlefield 1 and Mass Effect Andromeda
4K Checkerboard in Battlefield 1 and Mass Effect Andromeda4K Checkerboard in Battlefield 1 and Mass Effect Andromeda
4K Checkerboard in Battlefield 1 and Mass Effect Andromeda
 
High Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in FrostbiteHigh Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in Frostbite
 
Stable SSAO in Battlefield 3 with Selective Temporal Filtering
Stable SSAO in Battlefield 3 with Selective Temporal FilteringStable SSAO in Battlefield 3 with Selective Temporal Filtering
Stable SSAO in Battlefield 3 with Selective Temporal Filtering
 
5 Major Challenges in Real-time Rendering (2012)
5 Major Challenges in Real-time Rendering (2012)5 Major Challenges in Real-time Rendering (2012)
5 Major Challenges in Real-time Rendering (2012)
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next Steps
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars Battlefront
 
FrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteFrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in Frostbite
 
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
Parallel Graphics in Frostbite - Current & Future (Siggraph 2009)
 
Mantle for Developers
Mantle for DevelopersMantle for Developers
Mantle for Developers
 
Battlefield 4 + Frostbite + Mantle
Battlefield 4 + Frostbite + MantleBattlefield 4 + Frostbite + Mantle
Battlefield 4 + Frostbite + Mantle
 
Introduction to Data Oriented Design
Introduction to Data Oriented DesignIntroduction to Data Oriented Design
Introduction to Data Oriented Design
 
Colin Barre-Brisebois - GDC 2011 - Approximating Translucency for a Fast, Che...
Colin Barre-Brisebois - GDC 2011 - Approximating Translucency for a Fast, Che...Colin Barre-Brisebois - GDC 2011 - Approximating Translucency for a Fast, Che...
Colin Barre-Brisebois - GDC 2011 - Approximating Translucency for a Fast, Che...
 
A Real-time Radiosity Architecture
A Real-time Radiosity ArchitectureA Real-time Radiosity Architecture
A Real-time Radiosity Architecture
 
Audio for Multiplayer & Beyond - Mixing Case Studies From Battlefield: Bad Co...
Audio for Multiplayer & Beyond - Mixing Case Studies From Battlefield: Bad Co...Audio for Multiplayer & Beyond - Mixing Case Studies From Battlefield: Bad Co...
Audio for Multiplayer & Beyond - Mixing Case Studies From Battlefield: Bad Co...
 
5 Major Challenges in Interactive Rendering
5 Major Challenges in Interactive Rendering5 Major Challenges in Interactive Rendering
5 Major Challenges in Interactive Rendering
 
Scope Stack Allocation
Scope Stack AllocationScope Stack Allocation
Scope Stack Allocation
 
Executable Bloat - How it happens and how we can fight it
Executable Bloat - How it happens and how we can fight itExecutable Bloat - How it happens and how we can fight it
Executable Bloat - How it happens and how we can fight it
 
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
The Intersection of Game Engines & GPUs: Current & Future (Graphics Hardware ...
 
Bending the Graphics Pipeline
Bending the Graphics PipelineBending the Graphics Pipeline
Bending the Graphics Pipeline
 

Similar to Shiny PC Graphics in Battlefield 3

Lighting you up in Battlefield 3
Lighting you up in Battlefield 3Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
drandom
 
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" DemoThe Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
drandom
 
Epic_GDC2011_Samaritan
Epic_GDC2011_SamaritanEpic_GDC2011_Samaritan
Epic_GDC2011_Samaritan
MinGeun Park
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
Frank Chao
 
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
JP Lee
 
Gdc2011 direct x 11 rendering in battlefield 3
Gdc2011 direct x 11 rendering in battlefield 3Gdc2011 direct x 11 rendering in battlefield 3
Gdc2011 direct x 11 rendering in battlefield 3
drandom
 

Similar to Shiny PC Graphics in Battlefield 3 (20)

Lighting you up in Battlefield 3
Lighting you up in Battlefield 3Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
 
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" DemoThe Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
The Technology Behind the DirectX 11 Unreal Engine"Samaritan" Demo
 
Epic_GDC2011_Samaritan
Epic_GDC2011_SamaritanEpic_GDC2011_Samaritan
Epic_GDC2011_Samaritan
 
Gdc11 lighting used in BF3
Gdc11 lighting used in BF3Gdc11 lighting used in BF3
Gdc11 lighting used in BF3
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo Postmortem
 
Technologies Used In Graphics Rendering
Technologies Used In Graphics RenderingTechnologies Used In Graphics Rendering
Technologies Used In Graphics Rendering
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
 
【Unite Tokyo 2018】『崩壊3rd』開発者が語るアニメ風レンダリングの極意
【Unite Tokyo 2018】『崩壊3rd』開発者が語るアニメ風レンダリングの極意【Unite Tokyo 2018】『崩壊3rd』開発者が語るアニメ風レンダリングの極意
【Unite Tokyo 2018】『崩壊3rd』開発者が語るアニメ風レンダリングの極意
 
GDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
GDC 2014 - Deformable Snow Rendering in Batman: Arkham OriginsGDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
GDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
 
Oculus insight building the best vr aaron davies
Oculus insight building the best vr   aaron daviesOculus insight building the best vr   aaron davies
Oculus insight building the best vr aaron davies
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発
 
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
 
Gdc2011 direct x 11 rendering in battlefield 3
Gdc2011 direct x 11 rendering in battlefield 3Gdc2011 direct x 11 rendering in battlefield 3
Gdc2011 direct x 11 rendering in battlefield 3
 
Infinity Blade and beyond
Infinity Blade and beyondInfinity Blade and beyond
Infinity Blade and beyond
 
Eyecatcher im Echzeit 3D-Rendering
Eyecatcher im Echzeit 3D-RenderingEyecatcher im Echzeit 3D-Rendering
Eyecatcher im Echzeit 3D-Rendering
 
CEDEC 2018 - Towards Effortless Photorealism Through Real-Time Raytracing
CEDEC 2018 - Towards Effortless Photorealism Through Real-Time RaytracingCEDEC 2018 - Towards Effortless Photorealism Through Real-Time Raytracing
CEDEC 2018 - Towards Effortless Photorealism Through Real-Time Raytracing
 
More Performance! Five Rendering Ideas From Battlefield 3 and Need For Speed:...
More Performance! Five Rendering Ideas From Battlefield 3 and Need For Speed:...More Performance! Five Rendering Ideas From Battlefield 3 and Need For Speed:...
More Performance! Five Rendering Ideas From Battlefield 3 and Need For Speed:...
 
Look Ma, No Jutter! Optimizing Performance Across Oculus Mobile
Look Ma, No Jutter! Optimizing Performance Across Oculus MobileLook Ma, No Jutter! Optimizing Performance Across Oculus Mobile
Look Ma, No Jutter! Optimizing Performance Across Oculus Mobile
 

More from Electronic Arts / DICE

More from Electronic Arts / DICE (15)

GDC2019 - SEED - Towards Deep Generative Models in Game Development
GDC2019 - SEED - Towards Deep Generative Models in Game DevelopmentGDC2019 - SEED - Towards Deep Generative Models in Game Development
GDC2019 - SEED - Towards Deep Generative Models in Game Development
 
SIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's EdgeSIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
 
SEED - Halcyon Architecture
SEED - Halcyon ArchitectureSEED - Halcyon Architecture
SEED - Halcyon Architecture
 
Syysgraph 2018 - Modern Graphics Abstractions & Real-Time Ray Tracing
Syysgraph 2018 - Modern Graphics Abstractions & Real-Time Ray TracingSyysgraph 2018 - Modern Graphics Abstractions & Real-Time Ray Tracing
Syysgraph 2018 - Modern Graphics Abstractions & Real-Time Ray Tracing
 
Khronos Munich 2018 - Halcyon and Vulkan
Khronos Munich 2018 - Halcyon and VulkanKhronos Munich 2018 - Halcyon and Vulkan
Khronos Munich 2018 - Halcyon and Vulkan
 
CEDEC 2018 - Functional Symbiosis of Art Direction and Proceduralism
CEDEC 2018 - Functional Symbiosis of Art Direction and ProceduralismCEDEC 2018 - Functional Symbiosis of Art Direction and Proceduralism
CEDEC 2018 - Functional Symbiosis of Art Direction and Proceduralism
 
SIGGRAPH 2018 - PICA PICA and NVIDIA Turing
SIGGRAPH 2018 - PICA PICA and NVIDIA TuringSIGGRAPH 2018 - PICA PICA and NVIDIA Turing
SIGGRAPH 2018 - PICA PICA and NVIDIA Turing
 
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingSIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
 
EPC 2018 - SEED - Exploring The Collaboration Between Proceduralism & Deep Le...
EPC 2018 - SEED - Exploring The Collaboration Between Proceduralism & Deep Le...EPC 2018 - SEED - Exploring The Collaboration Between Proceduralism & Deep Le...
EPC 2018 - SEED - Exploring The Collaboration Between Proceduralism & Deep Le...
 
DD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time RenderingDD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time Rendering
 
Creativity of Rules and Patterns: Designing Procedural Systems
Creativity of Rules and Patterns: Designing Procedural SystemsCreativity of Rules and Patterns: Designing Procedural Systems
Creativity of Rules and Patterns: Designing Procedural Systems
 
Shiny Pixels and Beyond: Real-Time Raytracing at SEED
Shiny Pixels and Beyond: Real-Time Raytracing at SEEDShiny Pixels and Beyond: Real-Time Raytracing at SEED
Shiny Pixels and Beyond: Real-Time Raytracing at SEED
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-Graphics
 
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
 
Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in FrostbitePhysically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite
 

Recently uploaded

Pakistani Call girls in Deira 0567006274 Deira Call girls
Pakistani Call girls in Deira 0567006274 Deira Call girlsPakistani Call girls in Deira 0567006274 Deira Call girls
Pakistani Call girls in Deira 0567006274 Deira Call girls
Monica Sydney
 
Deira Call girl agency 0567006274 Call girls in Deira
Deira Call girl agency 0567006274 Call girls in DeiraDeira Call girl agency 0567006274 Call girls in Deira
Deira Call girl agency 0567006274 Call girls in Deira
Monica Sydney
 
Dubai Call girls Service 0524076003 Call girls services in Dubai
Dubai Call girls Service 0524076003 Call girls services in DubaiDubai Call girls Service 0524076003 Call girls services in Dubai
Dubai Call girls Service 0524076003 Call girls services in Dubai
Monica Sydney
 
Dubai Call girls Service 0524076003 Call girls in Dubai
Dubai Call girls Service 0524076003 Call girls in DubaiDubai Call girls Service 0524076003 Call girls in Dubai
Dubai Call girls Service 0524076003 Call girls in Dubai
Monica Sydney
 
Abortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
Abortion pills in Saudi RIYADH (+919707899604 } Get CytotecAbortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
Abortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
Ghansoli Escorts Services 09167354423 Ghansoli Call Girls,Call Girls In Ghan...
Ghansoli Escorts Services 09167354423  Ghansoli Call Girls,Call Girls In Ghan...Ghansoli Escorts Services 09167354423  Ghansoli Call Girls,Call Girls In Ghan...
Ghansoli Escorts Services 09167354423 Ghansoli Call Girls,Call Girls In Ghan...
Priya Reddy
 

Recently uploaded (20)

Osmanabad Call Girls Book Night 4k to 12k ️[8617370543] Escorts Girls Service
Osmanabad Call Girls Book Night 4k to 12k ️[8617370543] Escorts Girls ServiceOsmanabad Call Girls Book Night 4k to 12k ️[8617370543] Escorts Girls Service
Osmanabad Call Girls Book Night 4k to 12k ️[8617370543] Escorts Girls Service
 
Pakistani Call girls in Deira 0567006274 Deira Call girls
Pakistani Call girls in Deira 0567006274 Deira Call girlsPakistani Call girls in Deira 0567006274 Deira Call girls
Pakistani Call girls in Deira 0567006274 Deira Call girls
 
Hire 💕 8617370543 Mirzapur Call Girls Service Call Girls Agency
Hire 💕 8617370543 Mirzapur Call Girls Service Call Girls AgencyHire 💕 8617370543 Mirzapur Call Girls Service Call Girls Agency
Hire 💕 8617370543 Mirzapur Call Girls Service Call Girls Agency
 
Call girls Service Bellary - 9332606886 Rs 3000 Free Pickup & Drop Services 2...
Call girls Service Bellary - 9332606886 Rs 3000 Free Pickup & Drop Services 2...Call girls Service Bellary - 9332606886 Rs 3000 Free Pickup & Drop Services 2...
Call girls Service Bellary - 9332606886 Rs 3000 Free Pickup & Drop Services 2...
 
Hire 💕 8617370543 Auraiya Call Girls Service Call Girls Agency
Hire 💕 8617370543 Auraiya Call Girls Service Call Girls AgencyHire 💕 8617370543 Auraiya Call Girls Service Call Girls Agency
Hire 💕 8617370543 Auraiya Call Girls Service Call Girls Agency
 
Deira Call girl agency 0567006274 Call girls in Deira
Deira Call girl agency 0567006274 Call girls in DeiraDeira Call girl agency 0567006274 Call girls in Deira
Deira Call girl agency 0567006274 Call girls in Deira
 
Dubai Call girls Service 0524076003 Call girls services in Dubai
Dubai Call girls Service 0524076003 Call girls services in DubaiDubai Call girls Service 0524076003 Call girls services in Dubai
Dubai Call girls Service 0524076003 Call girls services in Dubai
 
Dubai Call girls Service 0524076003 Call girls in Dubai
Dubai Call girls Service 0524076003 Call girls in DubaiDubai Call girls Service 0524076003 Call girls in Dubai
Dubai Call girls Service 0524076003 Call girls in Dubai
 
Turbhe Female Escorts 09167354423 Turbhe Escorts,Call Girls In Turbhe
Turbhe Female Escorts 09167354423  Turbhe Escorts,Call Girls In TurbheTurbhe Female Escorts 09167354423  Turbhe Escorts,Call Girls In Turbhe
Turbhe Female Escorts 09167354423 Turbhe Escorts,Call Girls In Turbhe
 
Codes and conventions of film magazines.pptx
Codes and conventions of film magazines.pptxCodes and conventions of film magazines.pptx
Codes and conventions of film magazines.pptx
 
Call Girls Bhubaneswar 9777949614 call me Independent Escort Service Bhubaneswar
Call Girls Bhubaneswar 9777949614 call me Independent Escort Service BhubaneswarCall Girls Bhubaneswar 9777949614 call me Independent Escort Service Bhubaneswar
Call Girls Bhubaneswar 9777949614 call me Independent Escort Service Bhubaneswar
 
Pakistani Call girls in Ajman 0505086370 Ajman Call girls
Pakistani Call girls in Ajman 0505086370 Ajman Call girlsPakistani Call girls in Ajman 0505086370 Ajman Call girls
Pakistani Call girls in Ajman 0505086370 Ajman Call girls
 
Call Girls in Ernakulam - 9332606886 Our call girls are sure to provide you w...
Call Girls in Ernakulam - 9332606886 Our call girls are sure to provide you w...Call Girls in Ernakulam - 9332606886 Our call girls are sure to provide you w...
Call Girls in Ernakulam - 9332606886 Our call girls are sure to provide you w...
 
Gonda Nitya salvi 8617370543 VIP model college girls ...
Gonda Nitya salvi 8617370543 VIP model college girls ...Gonda Nitya salvi 8617370543 VIP model college girls ...
Gonda Nitya salvi 8617370543 VIP model college girls ...
 
Abortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
Abortion pills in Saudi RIYADH (+919707899604 } Get CytotecAbortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
Abortion pills in Saudi RIYADH (+919707899604 } Get Cytotec
 
Call Girls in Perumbavoor / 9332606886 Genuine Call girls with real Photos an...
Call Girls in Perumbavoor / 9332606886 Genuine Call girls with real Photos an...Call Girls in Perumbavoor / 9332606886 Genuine Call girls with real Photos an...
Call Girls in Perumbavoor / 9332606886 Genuine Call girls with real Photos an...
 
Satara call girl 8617370543♥️ call girls in satara escort service
Satara call girl 8617370543♥️ call girls in satara escort serviceSatara call girl 8617370543♥️ call girls in satara escort service
Satara call girl 8617370543♥️ call girls in satara escort service
 
Call Girls Kozhikode - 9332606886 Our call girls are sure to provide you with...
Call Girls Kozhikode - 9332606886 Our call girls are sure to provide you with...Call Girls Kozhikode - 9332606886 Our call girls are sure to provide you with...
Call Girls Kozhikode - 9332606886 Our call girls are sure to provide you with...
 
Hire 💕 8617370543 Kushinagar Call Girls Service Call Girls Agency
Hire 💕 8617370543 Kushinagar Call Girls Service Call Girls AgencyHire 💕 8617370543 Kushinagar Call Girls Service Call Girls Agency
Hire 💕 8617370543 Kushinagar Call Girls Service Call Girls Agency
 
Ghansoli Escorts Services 09167354423 Ghansoli Call Girls,Call Girls In Ghan...
Ghansoli Escorts Services 09167354423  Ghansoli Call Girls,Call Girls In Ghan...Ghansoli Escorts Services 09167354423  Ghansoli Call Girls,Call Girls In Ghan...
Ghansoli Escorts Services 09167354423 Ghansoli Call Girls,Call Girls In Ghan...
 

Shiny PC Graphics in Battlefield 3

  • 1. Johan Andersson, Rendering Architect, DICE
  • 2.
  • 3.
  • 4.
  • 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
  • 7.
  • 8.
  • 10. Effects Objects Lighting Effects Terrain Post-processing
  • 11. OBJECTS Example of objects: › Gameplay: Characters, Weapons, Vehicles › Environment: Trees, Bushes, Rocks › Man-made: Buildings, Fences, Containers › Effects: Debris, Destruction
  • 12. Levels can have 10000+ objects › Requires efficient & scalable handling › Parallel rendering & simulation › Occlusion culling › LOD & distance culling › Mesh & texture streaming › Instancing
  • 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
  • 19. Bloom
  • 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
  • 21. Normals Smoothness Diffuse Specular
  • 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
  • 28. Indirect/bounced light No indirect/bounced light Indirect light No indirect light
  • 29. Indirect light No indirect light
  • 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
  • 35.
  • 36. Volumetric particle lighting › Each particle is lit by all lights › Fit into all light environments › Automatic!
  • 37. Particle lights › Light up both themselves and surrounding surfaces
  • 39.
  • 40. Shadows on particles = on Shadows on particles = off
  • 41.
  • 42. TERRAIN Vast view distances › High-res streamed heightfields › Per-pixel normalmaps › DX11 tessellation & displacement mapping
  • 43.
  • 45. Displacement mapped terrain Requires DX11 GPU › Terrain Quality set to HIGH or ULTRA
  • 46. Procedural virtual texturing › Increased quality & variation › Improved performance › Longer view distances
  • 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
  • 55. POST-PROCESSING Post effects: › Bloom › Filmic Tonemapping › Motion blur › Depth of field › Vignetting › Screen glare › Blur › SSAO/HBAO › Color grading › Film grain › Antialiasing
  • 56. Ambient Occlusion › Key visual cue to ground objects SSAO - Super cheap effect › No extra memory cost › Used on the consoles and MEDIUM
  • 57. Ambient Occlusion › Key visual cue to ground objects HBAO - Much improved since BC2 › Nvidia & DICE collaboration › Wider filter & more detail › Special temporal noise filtering
  • 58. No AO
  • 59. SSAO
  • 60. HBAO
  • 61.
  • 64. Blur + Vignette + Desaturation + Blood
  • 66. Step 1 - Terrain
  • 67. Step 2 – Composite Meshes
  • 68. Step 3 – Rigid Meshes
  • 69. Step 4 – Foliage
  • 70. Step 5 - Decals
  • 71. Step 6 – GBuffer Normals
  • 72. Step 7 – GBuffer Specular
  • 73. Step 8 – GBuffer Smoothness
  • 74. Step 9 – GBuffer Sky Visibility
  • 75. Step 10 – Sky & Indirect light
  • 76. Step 11 – Sun Light
  • 77. Step 12 – Local Lights
  • 78. Step 13 – Combined lighting & albedos
  • 79. Step 14 - Sky
  • 80. Step 15 – Atmospheric Scattering
  • 81. Step 16 – Lensflares & Glare
  • 82. Step 17 – Bloom (tinted)
  • 83. Step 18 – Final color grading
  • 84.
  • 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)
  • 90. 3 sec 30 fps line 60 fps line
  • 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
  • 93. And you for listening!
  • 94. Email: repi@dice.se Blog: http://repi.se Twitter: @repi Battlelog: repii For more DICE talks: http://publications.dice.se

Editor's Notes

  1. Windows Vista & Windows 7 only
  2. Such as Need for Speed: The Run
  3. 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
  4. - 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
  5. Only possible in DX10/DX11
  6. BC2 didn’t have any indirect lighting / bouncing
  7. BC2 didn’t have any indirect lighting / bouncing
  8. Particle shadows are not enabled on all emitters