SlideShare a Scribd company logo
1 of 56
Shiny Pixels and Beyond:
Real-Time Raytracing at SEED
Johan Andersson & Colin Barré-Brisebois
Electronic Arts
Watch the trailer here:
https://www.youtube.com/watch?v=LXo0WdlELJk
“PICA PICA”
Exploratory mini-game & world
 For our self-learning AI agents to play,
not for humans 
 Uses SEED’s Halcyon R&D engine
 Goals
 Explore hybrid raytracing with DXR
 Clean and consistent visuals
 Procedurally-generated worlds
 No precomputation
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Why raytracing?
 Flexible new tool in the toolbox
 Solve sparse & incoherent problems
 Unified API + performance (DXR + RTX)
 Simple high quality - easy ground truth
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Self-Learning AI
Using deep reinforcement learning
 “Imitation Learning with Concurrent Actions in
3D Games” [Harmer 2018]
 36 semantic views - 1550 fps
 Training with TensorFlow
 Future: Inference with WinML
See “Deep Learning - Beyond the Hype” tomorrow
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Hybrid Rendering Pipeline
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Direct shadows
(raytrace or raster)
Direct lighting (compute) Reflections (raytrace)Deferred shading (raster)
Global Illumination (raytrace) Post processing (compute)Transparency & Translucency
(raytrace)
Ambient occlusion
(raytrace or compute)
?
 Spawn a Mesh?
 DXR: build its bottom acceleration structure
 Multiple geometries for multiple materials
 Triangles, AABBs, custom
 Mesh instances specified in top acceleration
 Move a Mesh?
 Update the instance’s position/orientation in
the top acceleration
 Spawn [some] Rays?
 Multiple Hit and Miss shaders possible
Mesh 1 Mesh 2 Mesh 3
Bottom Acceleration
Inst. 1 Inst. 2 Inst. 3 Inst. 4 Inst. 5
Top Acceleration
Shader Table
R R R R M M
…… …
H H H H H H H H H H H H H H H
S E E D // DirectX: Evolving Microsoft's Graphics Platform
Raytraced Reflections
 Rasterize primary visibility
 Launch rays from the G-Buffer
 Raytrace at half resolution
 Reconstruct at full resolution
 Spatiotemporal filtering
 Works on both flat and curved
surfaces
Raytraced Reflections
S E E D // DirectX: Evolving Microsoft's Graphics Platform
Reflection Rays
Let’s launch some reflection rays:
1. Select one of the (2x2) pixels to trace
2. Reconstruct position and vectors
3. Initialize Halton & random number seq.
4. Initialize the payload
5. Prepare a new ray
6. Trace
7. Gather results from ray payload
 Reflection Color, Direction, HitT, 1/pdf
Reflections Raytracing HLSL Pseudo-Code
1
2
3
4
5
6
7
S E E D // DirectX: Evolving Microsoft's Graphics Platform
Reflection Filtering
Inspired by Stochastic Screen-Space Reflections
[Stachowiak 2015]
 For every full-res pixel, sample 16 pixels in
half-res ray results
 Blue Noise offsets, decorrelated every 2x2 pixels
 Build color bounding box of ray-hit results
 Clamp temporal history to bounding box
 Followed by a variance-driven bilateral filter
 Helps with rough reflections Unfiltered (Top) and Filtered (Bottom) Results
S E E D // DirectX: Evolving Microsoft's Graphics Platform
Screen-Space Reflections G-Buffer Raytraced Path Tracing Reference
Screen-Space Reflections G-Buffer Raytraced Path Tracing Reference
Materials
Combine multiple microfacet surface layers
into a single, unified & expressive BRDF
 Inspired by Arbitrarily Layered Micro-
Facet Surfaces [Weidlich 2007]
 Unified for all lighting & rendering modes
 Raster, path-traced reference, and hybrid
 Energy conserving & Fresnel
 Rapidly experiment with different looks
 Bake down number of layers for production
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Objects with Multi-Layered Materials
Materials
Multi-Layered Materials
Standard
 Aluminum
 Brushed Aluminum
 Coated Carbon
 Copper
 Silver Satin
 Shiny / Mat Plastic
 Dark Rubber
Exotics*
 Glass
 Rough Glass
 Jade / Marble
* Integrated in BRDF, but built separately
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
BRDF Sampling
 General idea: Launch one ray for the whole stack
 Stochastically select a layer & sample
 When evaluating material, estimate visibility vs other layers
 Some energy is reflected, some is refracted:
 Microfacet: Fresnel (refracted = 1-Fresnel)
 Diffuse: reflected fraction equal to albedo,
remaining light absorbed; no refraction
 Sample BSDF of selected layer
 Attenuated by layer(s) on top
 Result is temporally filtered
 A single value for many layers requires clever filtering
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Multi-Layered Materials [Weidlich 2007]
Transparency & Translucency
Raytracing allows to unify reflections and refractions
 Glass
 Order-independent (OIT)
 Handles multiple IOR transitions
 Translucency
 Inspired from Translucency in Frostbite
[Barré-Brisebois 2011]
 Inner structure scattering based on lighting traveling
inside the medium
 Performance: we do it in texture-space
Glass and Translucency
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
• Flip normal and push (ray) inside
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
• Flip normal and push (ray) inside
• Launch rays in uniform sphere dist.
• Alternatively, front + back cosine lobes
• Perf: only do n-rays per frame
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
• Flip normal and push (ray) inside
• Launch rays in uniform sphere dist.
• Alternatively, front + back cosine lobes
• Perf: only do n-rays per frame
• Compute lighting at intersection
• Sample previous translucency result
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
• Flip normal and push (ray) inside
• Launch rays in uniform sphere dist.
• Alternatively, front + back cosine lobes
• Perf: only do n-rays per frame
• Compute lighting at intersection
• Sample previous translucency result
• Gather
• Modulate with Beer-Lambert or
Henyey-Greenstein phase function
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Breakdown
• For every valid position & normal
• Flip normal and push (ray) inside
• Launch rays in uniform sphere dist.
• Alternatively, front + back cosine lobes
• Perf: only do n-rays per frame
• Compute lighting at intersection
• Sample previous translucency result
• Gather
• Modulate with Beer-Lambert or
Henyey-Greenstein phase function
• Store new BTDF value
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Filtering
Result converges over a couple frames
 Denoised or temporally-accumulated
 Temporal: build an update heuristic
 Exponential moving average can be OK
 Game-specific threshold to update
 Reactive enough for moving lights & objects
 Variance-adaptive mean estimation
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Translucency Shadowing
Raytracing allows for globally
shadowed translucency
 Global phenomena
 Integration via feedback
 Objects occlude each other
 Overall more grounded
and visually-convincing
translucency
Direct Lighting Self-Shadowed Translucency
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Transparency
Similar approach is used for glass
 Launch ray using view’s origin and direction
 Refract based on medium's index-of-refraction (IOR)
 Snell’s law: refract(ray, N, iorInput / iorOutput)
 DXR: HitKind() to handle IOR transitions (Air ⇔ Glass)
 Trace a ray in the scene & sample lighting
 Tint the result by glass color + chromatic aberration
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Transparency
Similar approach is used for glass
 Launch ray using view’s origin and direction
 Refract based on medium's index-of-refraction (IOR)
 Snell’s law: refract(ray, N, iorInput / iorOutput)
 DXR: HitKind() to handle IOR transitions (Air ⇔ Glass)
 Trace a ray in the scene & sample lighting
 Tint the result by glass color + chromatic aberration
 Pen: we don’t handle transparent shadows yet
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Transparency
Works for clear and rough glass
 Clear
 No filtering required
 Rough / Blurry
 Open cone angle with Uniform
Cone Sampling [PBRT]
 Wider cone → more samples
 Or temporal filtering
 Tint with phase function and
more complex BTDF
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Global
Illumination
 We want a technique that:
 Doesn’t require any precomputation
 Doesn’t require parametrization (UVs, proxies)
 Works for both static and dynamic scenes
 Adaptive & refines itself on-the-fly
 Point-based / surfels for a dynamic world
 Runtime Monte-Carlo integration
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Surfel Placement
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Surfel Spawning From Camera @ 1% speed
Surfel Placement
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Skinned Surfels for Dynamic Objects
Sampling & Integration
 Compute surfel irradiance by PT
 When shooting rays/frame
 Limit depth and number of paths
 Limiting depth != fewer bounces
 Reuse results from previous frames
 1 = radiosity, ∞ = path tracing
 Variance-adaptive mean estimator
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
 Application (Binning, culling, half-res apply + upsample)
Progressive Integration (slowed down for clarity)
Shadows
Accumulated and filtered in screen-space
 Raygen: Launch a ray towards light
 Payload’s miss flag set to true (from Miss Shader) if it doesn’t hit geometry
 Penumbra driven by uniform cone sampling [PBRT]
 Temporal Reprojection
 Accumulates shadow and variance + TAA-style bounding box clamping
 Filter (SVGF-like) [Schied and NVIDIA 2017]
 Multipass weighted spatial blur, driven by variance from temporal accumulation
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Hard Raytraced Shadows
Soft Raytraced Shadows (Unfiltered)
Soft Raytraced Shadows (Filtered)
Hard Raytraced Shadows Soft Raytraced Shadows (Unfiltered) Soft Raytraced Shadows (Filtered)
What about texture level of detail?
 Mipmapping [Williams 1983] is the standard method to avoid texture aliasing:
 Screen-space pixel maps to approximately one texel in the mipmap hierarchy
 Supported by all GPUs for rasterization via shading quad and derivatives
Texture Level-of-Detail
Left: level-of-detail (λ), partial derivatives and the parallelogram-approximated texture-space footprint of a pixel. Right: mipmap chain
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Texture Level-of-Detail
No shading quads for ray tracing!
 Traditionaly: Ray Differentials
 Estimates the footprint of a pixel by
computing world-space derivatives of the
ray with respect to the image plane
 Have to differentiate (virtual offset) rays
 Heavier payload (12 floats) for subsequent
rays (can) affect performance. Optimize!
 Alternative: always sample mip 0 with bilinear filtering (with extra samples)
 Leads to aliasing and additional performance cost
Ray Differentials [Igehy99]
Surface
P(x + ∂x)
D(x + ∂x)P(x)
∂D(x)
∂P(x)
D(x)
D(x)
x
y
R(x)
R(x + ∂x)
∂x
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Texture Level-of-Detail
Together with Research, we
developed a texture LOD technique for raytracing:
 Heuristic based on triangle properties, a curvature
estimate, distance, and incident angle
 Similar quality to ray differentials with single trilinear lookup
 Single value stored in the payload for subsequent rays
 Upcoming publication by:
 Tomas Akenine-Möller (NV), Magnus Andersson (NV), Colin
Barré-Brisebois (EA), Jim Nilsson (NV), Robert Toth (NV)
Ground Truth, Ray Differentials, Ours, Mip0
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Summary
 Just the beginning – important new tool going forward
 Unified API – easy to experiment and integrate
 Flexible but complex tradeoffs - noise vs ghosting vs perf
 Can enable very high quality cinematic visuals
 Lots more to explore – perf, raster vs trace, sparse
render, denoising, new techniques
S E E DS E E D // Shiny Pixels and Beyond: Rendering Research at SEED
SEED @ GDC 2018
 DirectX: Evolving Microsoft's Graphics Platform (presented by Microsoft)
 Johan Andersson and Colin Barré-Brisebois
 Content will be available online soon at www.ea.com/seed
 Deep Learning - Beyond the Hype
 Magnus Nordin
 Room 2016, West Hall, Thursday, March 22nd, 11:30am - 12:30pm
 Creativity of Rules and Patterns: Designing Procedural Systems
 Anastasia Opara
 GDC Show Floor, Thursday, March 22nd, 12:30PM-1:00PM and
Friday, March 23rd @ 11:00AM-11:30AM
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Thanks
S E E D // DirectX: Evolving Microsoft's Graphics Platform
 SEED
 Joakim Bergdahl
 Ken Brown
 Dean Calver
 Dirk de la Hunt
 Jenna Frisk
 Paul Greveson
 Henrik Halen
 Effeli Holst
 Andrew Lauritzen
 Magnus Nordin
 Niklas Nummelin
 Anastasia Opara
 Kristoffer Sjöö
 Tomasz Stachowiak
 Ida Winterhaven
 Graham Wihlidal
 Microsoft
 Chas Boyd
 Ivan Nevraev
 Amar Patel
 Matt Sandy
 NVIDIA
 Tomas Akenine-Möller
 Nir Benty
 Jiho Choi
 Peter Harrison
 Alex Hyder
 Jon Jansen
 Aaron Lefohn
 Ignacio Llamas
 Henry Moreton
 Martin Stich
References
 [Harmer 2018] Jack Harmer, Linus Gisslén, Henrik Holst, Joakim Bergdahl, Tom Olsson, Kristoffer Sjöö and
Magnus Nordin“ Imitation Learning with Concurrent Actions in 3D Games”. available online
 [Barré-Brisebois 2011] Barré-Brisebois, Colin and Bouchard, Marc. “Approximating Translucency for a Fast,
Cheap and Convincing Subsurface Scattering Look”, available online.
 [Barré-Brisebois 2017] Barré-Brisebois, Colin. “A Certain Slant of Light: Past, Present and Future
Challenges of Global Illumination in Games”, available online.
 [Igehy 1999] Igehy, Homan. “Tracing Ray Differentials”, available online.
 [PBRT] Pharr, Matt. Jakob, Wenzel and Humphreys, Greg. “Physically Based Rendering”, Book,
http://www.pbrt.org/.
 [Schied 2017] Schied, Christoph et. Al. “Spatiotemporal Variance-Guided Filtering: Real-Time
Reconstruction for Path-Traced Global Illumination”, NVIDIA Research, available online.
 [Stachowiak 2015] Stachowiak, Tomasz. “Stochastic Screen-Space Reflections”, available online.
 [Weidlich 2007] Weidlich, Andrea and Wilkie, Alexander. “Arbitrarily Layered Micro-Facet Surfaces”,
available online.
[Williams 1983] Williams, Lance. “Pyramidal Parametrics”, available online.
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
S E E D / / S E A R C H F O R E X T R A O R D I N A R Y E X P E R I E N C E S D I V I S I O N
S T O C K H O L M – L O S A N G E L E S – M O N T R É A L – R E M O T E
W W W . E A . C O M / S E E D
W E ‘ R E H I R I N G !
Questions?
Bonus
S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
Ambient Occlusion
Ambient Occlusion (AO) [Langer 1994] [Miller 1994]
maps and scales directly with real-time ray tracing:
 Integral of the visibility function over the
hemisphere Ω for the point p on a surface with
normal n with respect to the projected solid angle
 Games often approximate this in screen-space
 With RT, more grounded & improves visual fidelity!
 Random directions w
 Can be temporally accumulated or denoised
S E E D // DirectX: Evolving Microsoft's Graphics Platform
𝑛
𝑝
𝐴 𝑝 =
1
𝜋 Ω
𝑉𝑝, 𝑤( 𝑛 ⋅ 𝑤)𝑑𝜔
Screen-Space AO
Raytraced AO
Screen-Space AO
Raytraced AO
(Same Radius as SSAO)
Raytraced AO
(Far-field)
mGPU
Ray
Generation
Copy Sub Regions
Copy Sub Regions
GPU1 GPU2 GPU3 GPU4
Explicit Heterogenous Multi-GPU
 Parallel Fork-Join Style
 Resources copied through system
memory using copy queue
 Minimize PCI-E transfers
 Approach
 Run ray generation on primary GPU
 Copy results in sub-regions to other GPUs
 Run tracing phases on separate GPUs
 Copy tracing results back to primary GPU
 Run filtering on primary GPU
Trace
GPU 2
Trace
GPU 1
Trace
GPU 3
Trace
GPU 4
Filter
S E E D // DirectX: Evolving Microsoft's Graphics Platform
Ray Tracing Gems
 A new book series with focus on real-time and
interactive ray tracing for game development
using the DXR API.
 We invite articles on the following topics:
Basic ray tracing algorithms, effects (shadows, reflections, tec), non-graphics applications, reconstruction,
denoising, & filtering, efficiency and best practices, baking & preprocessing, ray tracing API & design,
rasterization and ray tracing, global Illumination, BRDFs, VR, deep learning, etc.
 Important dates
o 15th of October 2018: submission deadline for full papers
o GDC 2019: publication of Ray Tracing Gems (paper version + e-book)
 Tomas Akenine-Möller will lead the editorial team
http://developer.nvidia.com/raytracinggems/
Call for Papers

More Related Content

What's hot

Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2ozlael ozlael
 
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...Electronic Arts / DICE
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2Guerrilla
 
Volumetric Lighting for Many Lights in Lords of the Fallen
Volumetric Lighting for Many Lights in Lords of the FallenVolumetric Lighting for Many Lights in Lords of the Fallen
Volumetric Lighting for Many Lights in Lords of the FallenBenjamin Glatzel
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3guest11b095
 
Around the World in 80 Shaders
Around the World in 80 ShadersAround the World in 80 Shaders
Around the World in 80 Shadersstevemcauley
 
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)Electronic Arts / DICE
 
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 DevelopmentElectronic Arts / DICE
 
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1Ki Hyunwoo
 
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 ProblemsElectronic Arts / DICE
 
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)Philip Hammer
 
Lighting Shading by John Hable
Lighting Shading by John HableLighting Shading by John Hable
Lighting Shading by John HableNaughty Dog
 
Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingElectronic Arts / DICE
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationGuerrilla
 
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
 
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 RaytracingElectronic Arts / DICE
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemGuerrilla
 

What's hot (20)

Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2
 
Stochastic Screen-Space Reflections
Stochastic Screen-Space ReflectionsStochastic Screen-Space Reflections
Stochastic Screen-Space Reflections
 
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...
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
Volumetric Lighting for Many Lights in Lords of the Fallen
Volumetric Lighting for Many Lights in Lords of the FallenVolumetric Lighting for Many Lights in Lords of the Fallen
Volumetric Lighting for Many Lights in Lords of the Fallen
 
A Bit More Deferred Cry Engine3
A Bit More Deferred   Cry Engine3A Bit More Deferred   Cry Engine3
A Bit More Deferred Cry Engine3
 
Around the World in 80 Shaders
Around the World in 80 ShadersAround the World in 80 Shaders
Around the World in 80 Shaders
 
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)
 
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
 
Lighting the City of Glass
Lighting the City of GlassLighting the City of Glass
Lighting the City of Glass
 
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1
Unreal Summit 2016 Seoul Lighting the Planetary World of Project A1
 
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
 
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)
 
Lighting Shading by John Hable
Lighting Shading by John HableLighting Shading by John Hable
Lighting Shading by John Hable
 
Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based Rendering
 
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next Generation
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
 
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
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo Postmortem
 

Similar to Shiny Pixels and Beyond: Real-Time Raytracing at SEED

Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3stevemcauley
 
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)Mark Kilgard
 
One day short course on Green Building Assessment Methods - Daylight Simulation
One day short course on Green Building Assessment Methods - Daylight SimulationOne day short course on Green Building Assessment Methods - Daylight Simulation
One day short course on Green Building Assessment Methods - Daylight Simulationekwtsang
 
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdfPapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdfAdam Hill
 
Optical Design Software Photopia
Optical Design Software PhotopiaOptical Design Software Photopia
Optical Design Software PhotopiaLTI Optics
 
Shadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive ApplicationsShadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive Applicationsstefan_b
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionDouglas Lanman
 
Introduction to 3D Computer Vision and Differentiable Rendering
Introduction to 3D Computer Vision and Differentiable RenderingIntroduction to 3D Computer Vision and Differentiable Rendering
Introduction to 3D Computer Vision and Differentiable RenderingPreferred Networks
 
Practical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsxPractical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsxMannyK4
 
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsAbalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsPhuong Hoang Vu
 
Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3Slide_N
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsNaughty Dog
 
Interactive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space TechniquesInteractive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space Techniquescodevania
 
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...Vincent Sitzmann
 
Phong Shading over any Polygonal Surface
Phong Shading over any Polygonal Surface Phong Shading over any Polygonal Surface
Phong Shading over any Polygonal Surface Bhuvnesh Pratap
 
Rendering basics
Rendering basicsRendering basics
Rendering basicsicedmaster
 

Similar to Shiny Pixels and Beyond: Real-Time Raytracing at SEED (20)

Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3
 
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
 
One day short course on Green Building Assessment Methods - Daylight Simulation
One day short course on Green Building Assessment Methods - Daylight SimulationOne day short course on Green Building Assessment Methods - Daylight Simulation
One day short course on Green Building Assessment Methods - Daylight Simulation
 
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdfPapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
 
Raskar Keynote at Stereoscopic Display Jan 2011
Raskar Keynote at Stereoscopic Display Jan 2011Raskar Keynote at Stereoscopic Display Jan 2011
Raskar Keynote at Stereoscopic Display Jan 2011
 
Optical Design Software Photopia
Optical Design Software PhotopiaOptical Design Software Photopia
Optical Design Software Photopia
 
Shadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive ApplicationsShadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive Applications
 
Build Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: ConclusionBuild Your Own 3D Scanner: Conclusion
Build Your Own 3D Scanner: Conclusion
 
Introduction to 3D Computer Vision and Differentiable Rendering
Introduction to 3D Computer Vision and Differentiable RenderingIntroduction to 3D Computer Vision and Differentiable Rendering
Introduction to 3D Computer Vision and Differentiable Rendering
 
Practical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsxPractical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsx
 
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsAbalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
 
Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3
 
Svr Raskar
Svr RaskarSvr Raskar
Svr Raskar
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT Methods
 
Interactive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space TechniquesInteractive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space Techniques
 
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...
Scene Representation Networks: Continuous 3D-Structure-Aware Neural Scene Rep...
 
Iluminacion
IluminacionIluminacion
Iluminacion
 
Phong Shading over any Polygonal Surface
Phong Shading over any Polygonal Surface Phong Shading over any Polygonal Surface
Phong Shading over any Polygonal Surface
 
Glasses Based 3D Displays
Glasses Based 3D DisplaysGlasses Based 3D Displays
Glasses Based 3D Displays
 
Rendering basics
Rendering basicsRendering basics
Rendering basics
 

More from Electronic Arts / DICE

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 TracingElectronic Arts / DICE
 
Khronos Munich 2018 - Halcyon and Vulkan
Khronos Munich 2018 - Halcyon and VulkanKhronos Munich 2018 - Halcyon and Vulkan
Khronos Munich 2018 - Halcyon and VulkanElectronic Arts / DICE
 
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 ProceduralismElectronic Arts / DICE
 
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...Electronic Arts / DICE
 
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 SystemsElectronic Arts / DICE
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsElectronic Arts / DICE
 
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 FrostbiteElectronic Arts / DICE
 
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 AndromedaElectronic Arts / DICE
 
FrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteFrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteElectronic Arts / DICE
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontElectronic Arts / DICE
 

More from Electronic Arts / DICE (16)

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
 
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...
 
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
 
Future Directions for Compute-for-Graphics
Future Directions for Compute-for-GraphicsFuture Directions for Compute-for-Graphics
Future Directions for Compute-for-Graphics
 
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
 
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
 
FrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteFrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in Frostbite
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars Battlefront
 
Frostbite on Mobile
Frostbite on MobileFrostbite on Mobile
Frostbite on Mobile
 
Rendering Battlefield 4 with Mantle
Rendering Battlefield 4 with MantleRendering Battlefield 4 with Mantle
Rendering Battlefield 4 with Mantle
 
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
 
Modular Rigging in Battlefield 3
Modular Rigging in Battlefield 3Modular Rigging in Battlefield 3
Modular Rigging in Battlefield 3
 

Recently uploaded

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Recently uploaded (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Shiny Pixels and Beyond: Real-Time Raytracing at SEED

  • 1. Shiny Pixels and Beyond: Real-Time Raytracing at SEED Johan Andersson & Colin Barré-Brisebois Electronic Arts
  • 2.
  • 3. Watch the trailer here: https://www.youtube.com/watch?v=LXo0WdlELJk
  • 4. “PICA PICA” Exploratory mini-game & world  For our self-learning AI agents to play, not for humans   Uses SEED’s Halcyon R&D engine  Goals  Explore hybrid raytracing with DXR  Clean and consistent visuals  Procedurally-generated worlds  No precomputation S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 5. Why raytracing?  Flexible new tool in the toolbox  Solve sparse & incoherent problems  Unified API + performance (DXR + RTX)  Simple high quality - easy ground truth S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 6. Self-Learning AI Using deep reinforcement learning  “Imitation Learning with Concurrent Actions in 3D Games” [Harmer 2018]  36 semantic views - 1550 fps  Training with TensorFlow  Future: Inference with WinML See “Deep Learning - Beyond the Hype” tomorrow S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 7. Hybrid Rendering Pipeline S E E D // Shiny Pixels and Beyond: Rendering Research at SEED Direct shadows (raytrace or raster) Direct lighting (compute) Reflections (raytrace)Deferred shading (raster) Global Illumination (raytrace) Post processing (compute)Transparency & Translucency (raytrace) Ambient occlusion (raytrace or compute)
  • 8. ?  Spawn a Mesh?  DXR: build its bottom acceleration structure  Multiple geometries for multiple materials  Triangles, AABBs, custom  Mesh instances specified in top acceleration  Move a Mesh?  Update the instance’s position/orientation in the top acceleration  Spawn [some] Rays?  Multiple Hit and Miss shaders possible Mesh 1 Mesh 2 Mesh 3 Bottom Acceleration Inst. 1 Inst. 2 Inst. 3 Inst. 4 Inst. 5 Top Acceleration Shader Table R R R R M M …… … H H H H H H H H H H H H H H H S E E D // DirectX: Evolving Microsoft's Graphics Platform
  • 9. Raytraced Reflections  Rasterize primary visibility  Launch rays from the G-Buffer  Raytrace at half resolution  Reconstruct at full resolution  Spatiotemporal filtering  Works on both flat and curved surfaces Raytraced Reflections S E E D // DirectX: Evolving Microsoft's Graphics Platform
  • 10. Reflection Rays Let’s launch some reflection rays: 1. Select one of the (2x2) pixels to trace 2. Reconstruct position and vectors 3. Initialize Halton & random number seq. 4. Initialize the payload 5. Prepare a new ray 6. Trace 7. Gather results from ray payload  Reflection Color, Direction, HitT, 1/pdf Reflections Raytracing HLSL Pseudo-Code 1 2 3 4 5 6 7 S E E D // DirectX: Evolving Microsoft's Graphics Platform
  • 11. Reflection Filtering Inspired by Stochastic Screen-Space Reflections [Stachowiak 2015]  For every full-res pixel, sample 16 pixels in half-res ray results  Blue Noise offsets, decorrelated every 2x2 pixels  Build color bounding box of ray-hit results  Clamp temporal history to bounding box  Followed by a variance-driven bilateral filter  Helps with rough reflections Unfiltered (Top) and Filtered (Bottom) Results S E E D // DirectX: Evolving Microsoft's Graphics Platform
  • 12.
  • 13. Screen-Space Reflections G-Buffer Raytraced Path Tracing Reference
  • 14. Screen-Space Reflections G-Buffer Raytraced Path Tracing Reference
  • 15. Materials Combine multiple microfacet surface layers into a single, unified & expressive BRDF  Inspired by Arbitrarily Layered Micro- Facet Surfaces [Weidlich 2007]  Unified for all lighting & rendering modes  Raster, path-traced reference, and hybrid  Energy conserving & Fresnel  Rapidly experiment with different looks  Bake down number of layers for production S E E D // Shiny Pixels and Beyond: Rendering Research at SEED Objects with Multi-Layered Materials
  • 16. Materials Multi-Layered Materials Standard  Aluminum  Brushed Aluminum  Coated Carbon  Copper  Silver Satin  Shiny / Mat Plastic  Dark Rubber Exotics*  Glass  Rough Glass  Jade / Marble * Integrated in BRDF, but built separately S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 17. BRDF Sampling  General idea: Launch one ray for the whole stack  Stochastically select a layer & sample  When evaluating material, estimate visibility vs other layers  Some energy is reflected, some is refracted:  Microfacet: Fresnel (refracted = 1-Fresnel)  Diffuse: reflected fraction equal to albedo, remaining light absorbed; no refraction  Sample BSDF of selected layer  Attenuated by layer(s) on top  Result is temporally filtered  A single value for many layers requires clever filtering S E E D // Shiny Pixels and Beyond: Rendering Research at SEED Multi-Layered Materials [Weidlich 2007]
  • 18. Transparency & Translucency Raytracing allows to unify reflections and refractions  Glass  Order-independent (OIT)  Handles multiple IOR transitions  Translucency  Inspired from Translucency in Frostbite [Barré-Brisebois 2011]  Inner structure scattering based on lighting traveling inside the medium  Performance: we do it in texture-space Glass and Translucency S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 19. Translucency Breakdown • For every valid position & normal S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 20. Translucency Breakdown • For every valid position & normal • Flip normal and push (ray) inside S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 21. Translucency Breakdown • For every valid position & normal • Flip normal and push (ray) inside • Launch rays in uniform sphere dist. • Alternatively, front + back cosine lobes • Perf: only do n-rays per frame S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 22. Translucency Breakdown • For every valid position & normal • Flip normal and push (ray) inside • Launch rays in uniform sphere dist. • Alternatively, front + back cosine lobes • Perf: only do n-rays per frame • Compute lighting at intersection • Sample previous translucency result S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 23. Translucency Breakdown • For every valid position & normal • Flip normal and push (ray) inside • Launch rays in uniform sphere dist. • Alternatively, front + back cosine lobes • Perf: only do n-rays per frame • Compute lighting at intersection • Sample previous translucency result • Gather • Modulate with Beer-Lambert or Henyey-Greenstein phase function S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 24. Translucency Breakdown • For every valid position & normal • Flip normal and push (ray) inside • Launch rays in uniform sphere dist. • Alternatively, front + back cosine lobes • Perf: only do n-rays per frame • Compute lighting at intersection • Sample previous translucency result • Gather • Modulate with Beer-Lambert or Henyey-Greenstein phase function • Store new BTDF value S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 25. Translucency Filtering Result converges over a couple frames  Denoised or temporally-accumulated  Temporal: build an update heuristic  Exponential moving average can be OK  Game-specific threshold to update  Reactive enough for moving lights & objects  Variance-adaptive mean estimation S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 26. Translucency Shadowing Raytracing allows for globally shadowed translucency  Global phenomena  Integration via feedback  Objects occlude each other  Overall more grounded and visually-convincing translucency Direct Lighting Self-Shadowed Translucency S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 27. Transparency Similar approach is used for glass  Launch ray using view’s origin and direction  Refract based on medium's index-of-refraction (IOR)  Snell’s law: refract(ray, N, iorInput / iorOutput)  DXR: HitKind() to handle IOR transitions (Air ⇔ Glass)  Trace a ray in the scene & sample lighting  Tint the result by glass color + chromatic aberration S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 28. Transparency Similar approach is used for glass  Launch ray using view’s origin and direction  Refract based on medium's index-of-refraction (IOR)  Snell’s law: refract(ray, N, iorInput / iorOutput)  DXR: HitKind() to handle IOR transitions (Air ⇔ Glass)  Trace a ray in the scene & sample lighting  Tint the result by glass color + chromatic aberration  Pen: we don’t handle transparent shadows yet S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 29. Transparency Works for clear and rough glass  Clear  No filtering required  Rough / Blurry  Open cone angle with Uniform Cone Sampling [PBRT]  Wider cone → more samples  Or temporal filtering  Tint with phase function and more complex BTDF S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 30. Global Illumination  We want a technique that:  Doesn’t require any precomputation  Doesn’t require parametrization (UVs, proxies)  Works for both static and dynamic scenes  Adaptive & refines itself on-the-fly  Point-based / surfels for a dynamic world  Runtime Monte-Carlo integration S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 31. Surfel Placement S E E D // Shiny Pixels and Beyond: Rendering Research at SEED Surfel Spawning From Camera @ 1% speed
  • 32. Surfel Placement S E E D // Shiny Pixels and Beyond: Rendering Research at SEED Skinned Surfels for Dynamic Objects
  • 33. Sampling & Integration  Compute surfel irradiance by PT  When shooting rays/frame  Limit depth and number of paths  Limiting depth != fewer bounces  Reuse results from previous frames  1 = radiosity, ∞ = path tracing  Variance-adaptive mean estimator S E E D // Shiny Pixels and Beyond: Rendering Research at SEED  Application (Binning, culling, half-res apply + upsample) Progressive Integration (slowed down for clarity)
  • 34. Shadows Accumulated and filtered in screen-space  Raygen: Launch a ray towards light  Payload’s miss flag set to true (from Miss Shader) if it doesn’t hit geometry  Penumbra driven by uniform cone sampling [PBRT]  Temporal Reprojection  Accumulates shadow and variance + TAA-style bounding box clamping  Filter (SVGF-like) [Schied and NVIDIA 2017]  Multipass weighted spatial blur, driven by variance from temporal accumulation S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 36. Soft Raytraced Shadows (Unfiltered)
  • 38. Hard Raytraced Shadows Soft Raytraced Shadows (Unfiltered) Soft Raytraced Shadows (Filtered)
  • 39. What about texture level of detail?  Mipmapping [Williams 1983] is the standard method to avoid texture aliasing:  Screen-space pixel maps to approximately one texel in the mipmap hierarchy  Supported by all GPUs for rasterization via shading quad and derivatives Texture Level-of-Detail Left: level-of-detail (λ), partial derivatives and the parallelogram-approximated texture-space footprint of a pixel. Right: mipmap chain S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 40. Texture Level-of-Detail No shading quads for ray tracing!  Traditionaly: Ray Differentials  Estimates the footprint of a pixel by computing world-space derivatives of the ray with respect to the image plane  Have to differentiate (virtual offset) rays  Heavier payload (12 floats) for subsequent rays (can) affect performance. Optimize!  Alternative: always sample mip 0 with bilinear filtering (with extra samples)  Leads to aliasing and additional performance cost Ray Differentials [Igehy99] Surface P(x + ∂x) D(x + ∂x)P(x) ∂D(x) ∂P(x) D(x) D(x) x y R(x) R(x + ∂x) ∂x S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 41. Texture Level-of-Detail Together with Research, we developed a texture LOD technique for raytracing:  Heuristic based on triangle properties, a curvature estimate, distance, and incident angle  Similar quality to ray differentials with single trilinear lookup  Single value stored in the payload for subsequent rays  Upcoming publication by:  Tomas Akenine-Möller (NV), Magnus Andersson (NV), Colin Barré-Brisebois (EA), Jim Nilsson (NV), Robert Toth (NV) Ground Truth, Ray Differentials, Ours, Mip0 S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 42. Summary  Just the beginning – important new tool going forward  Unified API – easy to experiment and integrate  Flexible but complex tradeoffs - noise vs ghosting vs perf  Can enable very high quality cinematic visuals  Lots more to explore – perf, raster vs trace, sparse render, denoising, new techniques S E E DS E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 43. SEED @ GDC 2018  DirectX: Evolving Microsoft's Graphics Platform (presented by Microsoft)  Johan Andersson and Colin Barré-Brisebois  Content will be available online soon at www.ea.com/seed  Deep Learning - Beyond the Hype  Magnus Nordin  Room 2016, West Hall, Thursday, March 22nd, 11:30am - 12:30pm  Creativity of Rules and Patterns: Designing Procedural Systems  Anastasia Opara  GDC Show Floor, Thursday, March 22nd, 12:30PM-1:00PM and Friday, March 23rd @ 11:00AM-11:30AM S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 44. Thanks S E E D // DirectX: Evolving Microsoft's Graphics Platform  SEED  Joakim Bergdahl  Ken Brown  Dean Calver  Dirk de la Hunt  Jenna Frisk  Paul Greveson  Henrik Halen  Effeli Holst  Andrew Lauritzen  Magnus Nordin  Niklas Nummelin  Anastasia Opara  Kristoffer Sjöö  Tomasz Stachowiak  Ida Winterhaven  Graham Wihlidal  Microsoft  Chas Boyd  Ivan Nevraev  Amar Patel  Matt Sandy  NVIDIA  Tomas Akenine-Möller  Nir Benty  Jiho Choi  Peter Harrison  Alex Hyder  Jon Jansen  Aaron Lefohn  Ignacio Llamas  Henry Moreton  Martin Stich
  • 45. References  [Harmer 2018] Jack Harmer, Linus Gisslén, Henrik Holst, Joakim Bergdahl, Tom Olsson, Kristoffer Sjöö and Magnus Nordin“ Imitation Learning with Concurrent Actions in 3D Games”. available online  [Barré-Brisebois 2011] Barré-Brisebois, Colin and Bouchard, Marc. “Approximating Translucency for a Fast, Cheap and Convincing Subsurface Scattering Look”, available online.  [Barré-Brisebois 2017] Barré-Brisebois, Colin. “A Certain Slant of Light: Past, Present and Future Challenges of Global Illumination in Games”, available online.  [Igehy 1999] Igehy, Homan. “Tracing Ray Differentials”, available online.  [PBRT] Pharr, Matt. Jakob, Wenzel and Humphreys, Greg. “Physically Based Rendering”, Book, http://www.pbrt.org/.  [Schied 2017] Schied, Christoph et. Al. “Spatiotemporal Variance-Guided Filtering: Real-Time Reconstruction for Path-Traced Global Illumination”, NVIDIA Research, available online.  [Stachowiak 2015] Stachowiak, Tomasz. “Stochastic Screen-Space Reflections”, available online.  [Weidlich 2007] Weidlich, Andrea and Wilkie, Alexander. “Arbitrarily Layered Micro-Facet Surfaces”, available online. [Williams 1983] Williams, Lance. “Pyramidal Parametrics”, available online. S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 46. S E E D / / S E A R C H F O R E X T R A O R D I N A R Y E X P E R I E N C E S D I V I S I O N S T O C K H O L M – L O S A N G E L E S – M O N T R É A L – R E M O T E W W W . E A . C O M / S E E D W E ‘ R E H I R I N G !
  • 48. Bonus S E E D // Shiny Pixels and Beyond: Rendering Research at SEED
  • 49. Ambient Occlusion Ambient Occlusion (AO) [Langer 1994] [Miller 1994] maps and scales directly with real-time ray tracing:  Integral of the visibility function over the hemisphere Ω for the point p on a surface with normal n with respect to the projected solid angle  Games often approximate this in screen-space  With RT, more grounded & improves visual fidelity!  Random directions w  Can be temporally accumulated or denoised S E E D // DirectX: Evolving Microsoft's Graphics Platform 𝑛 𝑝 𝐴 𝑝 = 1 𝜋 Ω 𝑉𝑝, 𝑤( 𝑛 ⋅ 𝑤)𝑑𝜔
  • 55. mGPU Ray Generation Copy Sub Regions Copy Sub Regions GPU1 GPU2 GPU3 GPU4 Explicit Heterogenous Multi-GPU  Parallel Fork-Join Style  Resources copied through system memory using copy queue  Minimize PCI-E transfers  Approach  Run ray generation on primary GPU  Copy results in sub-regions to other GPUs  Run tracing phases on separate GPUs  Copy tracing results back to primary GPU  Run filtering on primary GPU Trace GPU 2 Trace GPU 1 Trace GPU 3 Trace GPU 4 Filter S E E D // DirectX: Evolving Microsoft's Graphics Platform
  • 56. Ray Tracing Gems  A new book series with focus on real-time and interactive ray tracing for game development using the DXR API.  We invite articles on the following topics: Basic ray tracing algorithms, effects (shadows, reflections, tec), non-graphics applications, reconstruction, denoising, & filtering, efficiency and best practices, baking & preprocessing, ray tracing API & design, rasterization and ray tracing, global Illumination, BRDFs, VR, deep learning, etc.  Important dates o 15th of October 2018: submission deadline for full papers o GDC 2019: publication of Ray Tracing Gems (paper version + e-book)  Tomas Akenine-Möller will lead the editorial team http://developer.nvidia.com/raytracinggems/ Call for Papers