SlideShare uma empresa Scribd logo
1 de 59
Improving geometry culling for Deus Ex : Mankind
Divided
GDC 2016
Otso Mäkinen Sampo
Lappalainen
Nicolas Trudel
100 GB
MANUAL WORK FROM
EXPERTS
100 MB
WHY UMBRA?
BETTER
FRAME RATES
LARGER AND
MORE DETAILED
LEVELS
AUTOMATES
MANUAL WORK
ALL PLATFORMS
OCCLUSION CULLING
UMBRA OCCLUSION CULLING OVERVIEW
POLYGON SOUP VISIBLE OBJECTS
Pre-process Visibility
query
SPATIAL DATABASE
Glossary
Object types
Occluder
Target
Gate
Volume
Tome
Umbra’s spatial database
POLYGON SOUP
VOXELS
CELLS AND PORTALS
VISIBILITY QUERY
Rasterize portal graph
OCCLUSION BUFFER
RAYCAST & SPATIAL CONNECTIVITY
Raycast
AI spatial awareness
Spawn locations
Audio occlusion
Spatial connectivity
Topological distance
Scripted event activation
Audio propagation
IMPROVING GEOMETRY CULLING
Eidos-Montreal Studio
14
History
 Founded in 2007
 Located in…you guessed it!
 Focus on mature AAA games
 Games developed
 Deus Ex: Human Revolution (2011)
 Tomb Raider (2013) – Multiplayer Mode
 Thief (2014)
 Rise of the Tomb Raider (2015) – Co-developer
 Deus Ex : Mankind Divided
 Labs department : R&D tech for multiple studios/games
v
IMPROVING GEOMETRY CULLING
Dawn Engine
Evolution of technology
 Heavily modified version of IO Interactive’s Glacier™ 2 engine
 Tailored for the needs of Deus Ex franchise
 Middlewares used:
 Umbra
 PhysX
 APEX
 Bink
 Scaleform
 FMOD
 Nav Power
v
IMPROVING GEOMETRY CULLING
Dawn Engine - Rendering v
Tiled lighting
 Deferred lighting for opaque
 Forward lighting for transparent
Temporal anti-aliasing
 fixes a lot of the specular flickering, and smooth out smaller details
in objects
Temporal ambient occlusion
 Also gave us the best results. Computing ambient occlusion half
res, then upsampling over multiple frames
Visuals Examples
Copyright © 2016 Square Enix & Eidos-Montreal. All Rights Reserved
Example Scene
WITHOUT TAA
Example Scene
WITH TAA
Example Scene
SSAO
IMPROVING GEOMETRY CULLING
Dawn Engine - Rendering
Reflection
 Using SSR with localized cubemaps
Global illumination
 No lightmaps
 Baking data with spherical harmonics
 Per pixel lighting for opaque
 1 probe per object for transparent
 Probes placement: multi-levels, variable density
v
IMPROVING GEOMETRY CULLING 22
Dawn Engine - Rendering v
Hair
 Developed by Labs
 Improved Version of TressFX (see GDC 2015 Presentation)
IMPROVING GEOMETRY CULLING
IMPROVING GEOMETRY CULLING
Deus Ex : Mankind Divided
Game Information
 Release date: August 23rd, 2016
 Urban areas, both indoor and outdoor
 Artistic vision: create a tangible anticipation, as much with our
lighting & material process, as with crafting highly cluttered
environments
 Our biggest level is 1 km2, 300M polys
v
IMPROVING GEOMETRY CULLING
Occlusion Culling
Before using Umbra
 Placement of portals by hand
 Too tedious for map sizes
 Difficult to know where to place portals
 Fallback on frustum culling
Motivations for another method
 Automation
 Faster queries
v
IMPROVING GEOMETRY CULLING
Tools
 Umbra parameters, adjustable per scene
 By default, whole scene taken into account
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING 27
Tools
 Regions of interest (view volumes)
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING 28
Tools
 Regions of interest
 Usage of volumes
 Allows to adjust parameters for a particular region
 Visibility options on objects
 Static
 Occluder
 Occluder only
 Dynamic
 Baking
 In-editor or standalone
 Automatized by build machines
 Baking time: ~20 minutes
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING 29
Tools
 Baking
 One tome per scene: no streaming
 Except one level split in two
 Umbra scene and tome data between 15-50 mb
 Had to create unique ID per object
 Transparent objects (objects with at least one transparent
material)
 How to keep one unique ID per object?
 Add opaque primitives with object ID == 0, as occluders
 Add all primitives with unique object ID, as targets
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
Runtime
 Portal Queries
 Main camera
 Shadow maps: most of our lights are static
 Water reflection
 Rain accessibility
 Some post filters
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
Runtime
 Occlusion buffers
 Generated from queries on static entities
 Then used to accelerate queries for dynamic entities
 Cache
 Used for camera independent queries
 Client gives a cache ID
 The cache is composed of
 Pointer to occlusion buffer
 List of visible nodes
 Invalidate cache when:
 Registering static entities (could be optimized)
 Shadow caster data changes (mostly editor)
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
Integrating Umbra in Dawn Engine
Cache
Client Client Client
Umbra
Static Query Static Query
Static Query
DynamicQuery
(object grid and occlusion buffer)
Client
IMPROVING GEOMETRY CULLING
Runtime
 Dynamic objects
 Octree used to store them
 Occlusion buffer used to determine visible cells
 If cell visible, test on objects
 When no occlusion buffer
 Same done, but with frustum test
 Octree also used for static objects not registered to Umbra
 Sky domes, vistas
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
Runtime
 Parallelism
 Portal queries are split in 4 jobs
 Result is merged
 Object list
 Occlusion buffer
Global illumination
 Baking offline
 Hundreds of thousands of probes
 First, simple frustum test
 Could not use portal queries
 Umbra frustum queries improved bake time
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
Integrating Umbra in Dawn Engine
DEBUGGING TOOLS
IMPROVING GEOMETRY CULLING
Frozen Culling - Frustum
DEBUGGING TOOLS
IMPROVING GEOMETRY CULLING
Frozen Culling - Umbra
DEBUGGING TOOLS
IMPROVING GEOMETRY CULLING
Challenges
 Umbra integrated when lots of assets were already created
 At first, too many objects were tagged occluder
 Reduced tome size by half
 Reduced bake time by half
 Sometimes difficult to determine if occluder or not
 Context dependent
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
CHALLENGES
IMPROVING GEOMETRY CULLING
CHALLENGES
IMPROVING GEOMETRY CULLING
Challenges
 Voxelization settings
 Trade-off between performance/memory and result
 Lots of small holes in some maps
 Reducing detail in lots of sections => micro manage volumes to
increase detail
 Air vents
 Usage of occluder only
vIntegrating Umbra in Dawn Engine
IMPROVING GEOMETRY CULLING
CHALLENGES
IMPROVING GEOMETRY CULLING
BENCHMARKS
IMPROVING GEOMETRY CULLING
BENCHMARKS
IMPROVING GEOMETRY CULLING
 Simple frustum culling:
 6 fps
 6200 draw calls
 With Umbra:
 30 fps
 2600 draw calls
 Queries (typical frame)
 Main Camera: 4ms (static: 2ms, dynamic: 2ms)
 Shadow Casters : 1.4ms (7 shadows casters,
dynamic)
v
IMPROVING GEOMETRY CULLING
PS4 Benchmarks
IMPROVING GEOMETRY CULLING
Improvements
46
 Bake part of the scene
 Have a kind of level of detail for voxelization
 Have volumes to exclude voxelization data
 Be able to see the voxelization
v
IMPROVING GEOMETRY CULLING
Eidos-Montréal is hiring
Eidos-Montréal is always looking for the best talent.
At Eidos-Montréal, you'll find a team of talented and
passionate people who aim for the best and are
determined to achieve their goals.
v www.eidosmontreal.com
IMPROVING GEOMETRY CULLING
Any 3D Content, Any Device
FEATURES
FASTER
PRE-PROCESS
IMPROVED
CULLING
MORE ROBUST – LESS
TWEAKING
UMBRA 3.4
soon
OCCLUSION
CULLING
SPATIAL
CONNECTIVITY
RAYCAST
QUERY
UMBRA 3.3
now
VISIBILITY-BASED
3D STREAMING AND
OPTIMIZATION
UMBRA 4.0
Q3–Q4
4.0 Overview
Streaming and Rendering of Large 3D Worlds
It all starts with the user
(e.g. game designer) creating 3D worlds.
How It Works
With their tool of choice (Unity, Unreal etc.),
they can “umbrafy” these worlds.
This means that they are sent to
the Umbra Cloud...
...or the Umbra Optimizer on
a local computer.
Umbra then
automatically
restructures
the data...
... and creates an
optimized database
that is stored
locally or in the
Umbra Cloud.
When the game,
is running,
Umbra will...
...tell what to
render next with
3D content
streaming
...report what
is visible with
occlusion culling
...define which
version of assets
to use (level
of detail)
Questions & Answers
Thank you for your time & see you next year.

Mais conteúdo relacionado

Mais procurados

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...Colin Barré-Brisebois
 
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3Electronic Arts / DICE
 
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 OriginsColin Barré-Brisebois
 
Star Ocean 4 - Flexible Shader Managment and Post-processing
Star Ocean 4 - Flexible Shader Managment and Post-processingStar Ocean 4 - Flexible Shader Managment and Post-processing
Star Ocean 4 - Flexible Shader Managment and Post-processingumsl snfrzb
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3guest11b095
 
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 LightingSteven Tovey
 
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 FilteringElectronic Arts / DICE
 
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
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsJohan Andersson
 
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 FieldsElectronic 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
 
Optimizing the graphics pipeline with compute
Optimizing the graphics pipeline with computeOptimizing the graphics pipeline with compute
Optimizing the graphics pipeline with computeWuBinbo
 
GDC 2012: Advanced Procedural Rendering in DX11
GDC 2012: Advanced Procedural Rendering in DX11GDC 2012: Advanced Procedural Rendering in DX11
GDC 2012: Advanced Procedural Rendering in DX11smashflt
 
Advanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniquesAdvanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniquesJohan Andersson
 
Deferred shading
Deferred shadingDeferred shading
Deferred shadingFrank Chao
 
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsGTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsColin Barré-Brisebois
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontElectronic Arts / DICE
 

Mais procurados (20)

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...
 
Frostbite on Mobile
Frostbite on MobileFrostbite on Mobile
Frostbite on Mobile
 
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3
SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3
 
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
 
Star Ocean 4 - Flexible Shader Managment and Post-processing
Star Ocean 4 - Flexible Shader Managment and Post-processingStar Ocean 4 - Flexible Shader Managment and Post-processing
Star Ocean 4 - Flexible Shader Managment and Post-processing
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3
 
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
 
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
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
 
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next Steps
 
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
 
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 ...
 
Optimizing the graphics pipeline with compute
Optimizing the graphics pipeline with computeOptimizing the graphics pipeline with compute
Optimizing the graphics pipeline with compute
 
Shiny PC Graphics in Battlefield 3
Shiny PC Graphics in Battlefield 3Shiny PC Graphics in Battlefield 3
Shiny PC Graphics in Battlefield 3
 
GDC 2012: Advanced Procedural Rendering in DX11
GDC 2012: Advanced Procedural Rendering in DX11GDC 2012: Advanced Procedural Rendering in DX11
GDC 2012: Advanced Procedural Rendering in DX11
 
Advanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniquesAdvanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniques
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsGTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars Battlefront
 

Semelhante a GDC16: Improving geometry culling for Deus Ex: Mankind Divided by Nicolas Trudel

Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for GamesUmbra
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for GamesSampo Lappalainen
 
Umbra 3 IGDA & Unity Presentation
Umbra 3 IGDA & Unity PresentationUmbra 3 IGDA & Unity Presentation
Umbra 3 IGDA & Unity PresentationThomas Puha
 
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012Sampo Lappalainen
 
Siggraph 2011: Occlusion culling in Alan Wake
Siggraph 2011: Occlusion culling in Alan WakeSiggraph 2011: Occlusion culling in Alan Wake
Siggraph 2011: Occlusion culling in Alan WakeUmbra
 
Advanced Lighting for Interactive Applications
Advanced Lighting for Interactive ApplicationsAdvanced Lighting for Interactive Applications
Advanced Lighting for Interactive Applicationsstefan_b
 
565 Alpha Chun-Fu Chao
565 Alpha Chun-Fu Chao565 Alpha Chun-Fu Chao
565 Alpha Chun-Fu ChaoFrank Chao
 
Unite 2013 optimizing unity games for mobile platforms
Unite 2013 optimizing unity games for mobile platformsUnite 2013 optimizing unity games for mobile platforms
Unite 2013 optimizing unity games for mobile platformsナム-Nam Nguyễn
 
WebXR and Browsers
WebXR and BrowsersWebXR and Browsers
WebXR and BrowsersIgalia
 
Introduction To Massive Model Visualization
Introduction To Massive Model VisualizationIntroduction To Massive Model Visualization
Introduction To Massive Model Visualizationpjcozzi
 
Advanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics APIAdvanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics APITomi Aarnio
 
HTML5DevConf - Unleash the power of 3D with babylon.js
HTML5DevConf - Unleash the power of 3D with babylon.jsHTML5DevConf - Unleash the power of 3D with babylon.js
HTML5DevConf - Unleash the power of 3D with babylon.jsDavid Catuhe
 
D3 D10 Unleashed New Features And Effects
D3 D10 Unleashed   New Features And EffectsD3 D10 Unleashed   New Features And Effects
D3 D10 Unleashed New Features And EffectsThomas Goddard
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiUnreal Engine
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiLuis Cataldi
 
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...Johan Andersson
 
FGS 2011: Making A Game With Molehill: Zombie Tycoon
FGS 2011: Making A Game With Molehill: Zombie TycoonFGS 2011: Making A Game With Molehill: Zombie Tycoon
FGS 2011: Making A Game With Molehill: Zombie Tycoonmochimedia
 
FlameWorks GTC 2014
FlameWorks GTC 2014FlameWorks GTC 2014
FlameWorks GTC 2014Simon Green
 
Unleash 3D rendering with WebGL and Microsoft Edge
Unleash 3D rendering with WebGL and Microsoft EdgeUnleash 3D rendering with WebGL and Microsoft Edge
Unleash 3D rendering with WebGL and Microsoft EdgeDavid Catuhe
 

Semelhante a GDC16: Improving geometry culling for Deus Ex: Mankind Divided by Nicolas Trudel (20)

Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for Games
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for Games
 
Umbra 3 IGDA & Unity Presentation
Umbra 3 IGDA & Unity PresentationUmbra 3 IGDA & Unity Presentation
Umbra 3 IGDA & Unity Presentation
 
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
 
Siggraph 2011: Occlusion culling in Alan Wake
Siggraph 2011: Occlusion culling in Alan WakeSiggraph 2011: Occlusion culling in Alan Wake
Siggraph 2011: Occlusion culling in Alan Wake
 
Advanced Lighting for Interactive Applications
Advanced Lighting for Interactive ApplicationsAdvanced Lighting for Interactive Applications
Advanced Lighting for Interactive Applications
 
565 Alpha Chun-Fu Chao
565 Alpha Chun-Fu Chao565 Alpha Chun-Fu Chao
565 Alpha Chun-Fu Chao
 
NERC Presentation
NERC PresentationNERC Presentation
NERC Presentation
 
Unite 2013 optimizing unity games for mobile platforms
Unite 2013 optimizing unity games for mobile platformsUnite 2013 optimizing unity games for mobile platforms
Unite 2013 optimizing unity games for mobile platforms
 
WebXR and Browsers
WebXR and BrowsersWebXR and Browsers
WebXR and Browsers
 
Introduction To Massive Model Visualization
Introduction To Massive Model VisualizationIntroduction To Massive Model Visualization
Introduction To Massive Model Visualization
 
Advanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics APIAdvanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics API
 
HTML5DevConf - Unleash the power of 3D with babylon.js
HTML5DevConf - Unleash the power of 3D with babylon.jsHTML5DevConf - Unleash the power of 3D with babylon.js
HTML5DevConf - Unleash the power of 3D with babylon.js
 
D3 D10 Unleashed New Features And Effects
D3 D10 Unleashed   New Features And EffectsD3 D10 Unleashed   New Features And Effects
D3 D10 Unleashed New Features And Effects
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
 
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...
Frostbite Rendering Architecture and Real-time Procedural Shading & Texturing...
 
FGS 2011: Making A Game With Molehill: Zombie Tycoon
FGS 2011: Making A Game With Molehill: Zombie TycoonFGS 2011: Making A Game With Molehill: Zombie Tycoon
FGS 2011: Making A Game With Molehill: Zombie Tycoon
 
FlameWorks GTC 2014
FlameWorks GTC 2014FlameWorks GTC 2014
FlameWorks GTC 2014
 
Unleash 3D rendering with WebGL and Microsoft Edge
Unleash 3D rendering with WebGL and Microsoft EdgeUnleash 3D rendering with WebGL and Microsoft Edge
Unleash 3D rendering with WebGL and Microsoft Edge
 

Mais de Umbra Software

GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra
GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra
GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra Umbra Software
 
Umbra Ignite 2015: – Remy Chinchilla & Kevin Cerdà AAA indie production for ...
Umbra Ignite 2015: –  Remy Chinchilla & Kevin Cerdà AAA indie production for ...Umbra Ignite 2015: –  Remy Chinchilla & Kevin Cerdà AAA indie production for ...
Umbra Ignite 2015: – Remy Chinchilla & Kevin Cerdà AAA indie production for ...Umbra Software
 
Umbra Ignite 2015: Balázs Török – The blanket that’s always too short
Umbra Ignite 2015: Balázs Török – The blanket that’s always too shortUmbra Ignite 2015: Balázs Török – The blanket that’s always too short
Umbra Ignite 2015: Balázs Török – The blanket that’s always too shortUmbra Software
 
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...Umbra Software
 
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...Umbra Software
 
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...Umbra Software
 
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...Umbra Software
 
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...Umbra Software
 

Mais de Umbra Software (8)

GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra
GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra
GDC2014: Boosting your ARM mobile 3D rendering performance with Umbra
 
Umbra Ignite 2015: – Remy Chinchilla & Kevin Cerdà AAA indie production for ...
Umbra Ignite 2015: –  Remy Chinchilla & Kevin Cerdà AAA indie production for ...Umbra Ignite 2015: –  Remy Chinchilla & Kevin Cerdà AAA indie production for ...
Umbra Ignite 2015: – Remy Chinchilla & Kevin Cerdà AAA indie production for ...
 
Umbra Ignite 2015: Balázs Török – The blanket that’s always too short
Umbra Ignite 2015: Balázs Török – The blanket that’s always too shortUmbra Ignite 2015: Balázs Török – The blanket that’s always too short
Umbra Ignite 2015: Balázs Török – The blanket that’s always too short
 
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...
Umbra Ignite 2015: Rulon Raymond – The State of Skinning – a dive into modern...
 
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...
Umbra Ignite 2015: Thor Gunnarsson & Reynir Hardarson – Nailing AAA quality i...
 
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...
Umbra Ignite 2015: Jérémy Virga – Dishonored 2 rendering engine architecture ...
 
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...
Umbra Ignite 2015: Graham Wihlidal – Adapting a technology stream to ever-evo...
 
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...
Umbra Ignite 2015: Alex Evans – Learning from failure – prototypes, R&D, iter...
 

Último

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Último (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

GDC16: Improving geometry culling for Deus Ex: Mankind Divided by Nicolas Trudel

  • 1. Improving geometry culling for Deus Ex : Mankind Divided GDC 2016 Otso Mäkinen Sampo Lappalainen Nicolas Trudel
  • 2.
  • 3. 100 GB MANUAL WORK FROM EXPERTS 100 MB
  • 4. WHY UMBRA? BETTER FRAME RATES LARGER AND MORE DETAILED LEVELS AUTOMATES MANUAL WORK ALL PLATFORMS
  • 6. UMBRA OCCLUSION CULLING OVERVIEW POLYGON SOUP VISIBLE OBJECTS Pre-process Visibility query SPATIAL DATABASE
  • 13. RAYCAST & SPATIAL CONNECTIVITY Raycast AI spatial awareness Spawn locations Audio occlusion Spatial connectivity Topological distance Scripted event activation Audio propagation
  • 14. IMPROVING GEOMETRY CULLING Eidos-Montreal Studio 14 History  Founded in 2007  Located in…you guessed it!  Focus on mature AAA games  Games developed  Deus Ex: Human Revolution (2011)  Tomb Raider (2013) – Multiplayer Mode  Thief (2014)  Rise of the Tomb Raider (2015) – Co-developer  Deus Ex : Mankind Divided  Labs department : R&D tech for multiple studios/games v
  • 15. IMPROVING GEOMETRY CULLING Dawn Engine Evolution of technology  Heavily modified version of IO Interactive’s Glacier™ 2 engine  Tailored for the needs of Deus Ex franchise  Middlewares used:  Umbra  PhysX  APEX  Bink  Scaleform  FMOD  Nav Power v
  • 16. IMPROVING GEOMETRY CULLING Dawn Engine - Rendering v Tiled lighting  Deferred lighting for opaque  Forward lighting for transparent Temporal anti-aliasing  fixes a lot of the specular flickering, and smooth out smaller details in objects Temporal ambient occlusion  Also gave us the best results. Computing ambient occlusion half res, then upsampling over multiple frames
  • 17. Visuals Examples Copyright © 2016 Square Enix & Eidos-Montreal. All Rights Reserved
  • 21. IMPROVING GEOMETRY CULLING Dawn Engine - Rendering Reflection  Using SSR with localized cubemaps Global illumination  No lightmaps  Baking data with spherical harmonics  Per pixel lighting for opaque  1 probe per object for transparent  Probes placement: multi-levels, variable density v
  • 22. IMPROVING GEOMETRY CULLING 22 Dawn Engine - Rendering v Hair  Developed by Labs  Improved Version of TressFX (see GDC 2015 Presentation)
  • 24. IMPROVING GEOMETRY CULLING Deus Ex : Mankind Divided Game Information  Release date: August 23rd, 2016  Urban areas, both indoor and outdoor  Artistic vision: create a tangible anticipation, as much with our lighting & material process, as with crafting highly cluttered environments  Our biggest level is 1 km2, 300M polys v
  • 25. IMPROVING GEOMETRY CULLING Occlusion Culling Before using Umbra  Placement of portals by hand  Too tedious for map sizes  Difficult to know where to place portals  Fallback on frustum culling Motivations for another method  Automation  Faster queries v
  • 26. IMPROVING GEOMETRY CULLING Tools  Umbra parameters, adjustable per scene  By default, whole scene taken into account vIntegrating Umbra in Dawn Engine
  • 27. IMPROVING GEOMETRY CULLING 27 Tools  Regions of interest (view volumes) vIntegrating Umbra in Dawn Engine
  • 28. IMPROVING GEOMETRY CULLING 28 Tools  Regions of interest  Usage of volumes  Allows to adjust parameters for a particular region  Visibility options on objects  Static  Occluder  Occluder only  Dynamic  Baking  In-editor or standalone  Automatized by build machines  Baking time: ~20 minutes vIntegrating Umbra in Dawn Engine
  • 29. IMPROVING GEOMETRY CULLING 29 Tools  Baking  One tome per scene: no streaming  Except one level split in two  Umbra scene and tome data between 15-50 mb  Had to create unique ID per object  Transparent objects (objects with at least one transparent material)  How to keep one unique ID per object?  Add opaque primitives with object ID == 0, as occluders  Add all primitives with unique object ID, as targets vIntegrating Umbra in Dawn Engine
  • 30. IMPROVING GEOMETRY CULLING Runtime  Portal Queries  Main camera  Shadow maps: most of our lights are static  Water reflection  Rain accessibility  Some post filters vIntegrating Umbra in Dawn Engine
  • 31. IMPROVING GEOMETRY CULLING Runtime  Occlusion buffers  Generated from queries on static entities  Then used to accelerate queries for dynamic entities  Cache  Used for camera independent queries  Client gives a cache ID  The cache is composed of  Pointer to occlusion buffer  List of visible nodes  Invalidate cache when:  Registering static entities (could be optimized)  Shadow caster data changes (mostly editor) vIntegrating Umbra in Dawn Engine
  • 32. IMPROVING GEOMETRY CULLING Integrating Umbra in Dawn Engine Cache Client Client Client Umbra Static Query Static Query Static Query DynamicQuery (object grid and occlusion buffer) Client
  • 33. IMPROVING GEOMETRY CULLING Runtime  Dynamic objects  Octree used to store them  Occlusion buffer used to determine visible cells  If cell visible, test on objects  When no occlusion buffer  Same done, but with frustum test  Octree also used for static objects not registered to Umbra  Sky domes, vistas vIntegrating Umbra in Dawn Engine
  • 34. IMPROVING GEOMETRY CULLING Runtime  Parallelism  Portal queries are split in 4 jobs  Result is merged  Object list  Occlusion buffer Global illumination  Baking offline  Hundreds of thousands of probes  First, simple frustum test  Could not use portal queries  Umbra frustum queries improved bake time vIntegrating Umbra in Dawn Engine
  • 35. IMPROVING GEOMETRY CULLING Integrating Umbra in Dawn Engine DEBUGGING TOOLS
  • 36. IMPROVING GEOMETRY CULLING Frozen Culling - Frustum DEBUGGING TOOLS
  • 37. IMPROVING GEOMETRY CULLING Frozen Culling - Umbra DEBUGGING TOOLS
  • 38. IMPROVING GEOMETRY CULLING Challenges  Umbra integrated when lots of assets were already created  At first, too many objects were tagged occluder  Reduced tome size by half  Reduced bake time by half  Sometimes difficult to determine if occluder or not  Context dependent vIntegrating Umbra in Dawn Engine
  • 41. IMPROVING GEOMETRY CULLING Challenges  Voxelization settings  Trade-off between performance/memory and result  Lots of small holes in some maps  Reducing detail in lots of sections => micro manage volumes to increase detail  Air vents  Usage of occluder only vIntegrating Umbra in Dawn Engine
  • 45. IMPROVING GEOMETRY CULLING  Simple frustum culling:  6 fps  6200 draw calls  With Umbra:  30 fps  2600 draw calls  Queries (typical frame)  Main Camera: 4ms (static: 2ms, dynamic: 2ms)  Shadow Casters : 1.4ms (7 shadows casters, dynamic) v IMPROVING GEOMETRY CULLING PS4 Benchmarks
  • 46. IMPROVING GEOMETRY CULLING Improvements 46  Bake part of the scene  Have a kind of level of detail for voxelization  Have volumes to exclude voxelization data  Be able to see the voxelization v
  • 47. IMPROVING GEOMETRY CULLING Eidos-Montréal is hiring Eidos-Montréal is always looking for the best talent. At Eidos-Montréal, you'll find a team of talented and passionate people who aim for the best and are determined to achieve their goals. v www.eidosmontreal.com
  • 48. IMPROVING GEOMETRY CULLING Any 3D Content, Any Device
  • 49. FEATURES FASTER PRE-PROCESS IMPROVED CULLING MORE ROBUST – LESS TWEAKING UMBRA 3.4 soon OCCLUSION CULLING SPATIAL CONNECTIVITY RAYCAST QUERY UMBRA 3.3 now VISIBILITY-BASED 3D STREAMING AND OPTIMIZATION UMBRA 4.0 Q3–Q4
  • 50.
  • 51.
  • 53.
  • 54. Streaming and Rendering of Large 3D Worlds
  • 55. It all starts with the user (e.g. game designer) creating 3D worlds. How It Works
  • 56. With their tool of choice (Unity, Unreal etc.), they can “umbrafy” these worlds. This means that they are sent to the Umbra Cloud... ...or the Umbra Optimizer on a local computer.
  • 57. Umbra then automatically restructures the data... ... and creates an optimized database that is stored locally or in the Umbra Cloud.
  • 58. When the game, is running, Umbra will... ...tell what to render next with 3D content streaming ...report what is visible with occlusion culling ...define which version of assets to use (level of detail)
  • 59. Questions & Answers Thank you for your time & see you next year.

Notas do Editor

  1. Current solutions require a lot of manual work and ad-hoc methods to optimize the content to be consumed without signifacant lag or delay. It is also very time consuming thus expensive and still doesn’t scale up to large 3D models. Existing solution is to use ad-hoc methods and hand optimization to figure out which part of content is transmitted. This requires special skills, is very time consuming and expensive, and does not scale to large 3D models. <BRIDGE> That’s why Umbra is now expanding it’s expertise in gaming to other industries as well to provide solutions to these challenges we’ve talked about. I’m very proud to introduce The Umbra Cloud
  2. UP NEXT: SHOW LIVE DEMO FROM FAKE / SIDE BY SIDE COMPARISON