SlideShare una empresa de Scribd logo
1 de 55
Descargar para leer sin conexión
GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Deferred Rendering in Killzone 2

                      Michal Valient
              Senior Programmer, Guerrilla




  GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Talk Outline

‣   Forward & Deferred Rendering Overview
‣   G-Buffer Layout
‣   Shader Creation
‣   Deferred Rendering in Detail
    ‣ Rendering Passes
    ‣ Light and Shadows
    ‣ Post-Processing
‣ SPU Usage / Architecture



     GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Forward & Deferred Rendering Overview




      GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Forward Rendering – Single Pass

‣ For each object
   ‣ Find all lights affecting object
   ‣ Render all lighting and material in a single shader
‣ Shader combinations explosion
   ‣ Shader for each material vs. light setup combination
‣ All shadow maps have to be in memory
‣ Wasted shader cycles
   ‣ Invisible surfaces / overdraw
   ‣ Triangles outside light influence



   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Forward Rendering – Multi-Pass

‣ For each light
   ‣ For each object
   ‣ Add lighting from single light to frame buffer
‣ Shader for each material and light type
‣ Wasted shader cycles
   ‣ Invisible surfaces / overdraw
   ‣ Triangles outside light influence
   ‣ Lots of repeated work
       ‣ Full vertex shaders, texture filtering



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Deferred Rendering

‣ For each object
   ‣ Render surface properties into the G-Buffer
‣ For each light and lit pixel
   ‣ Use G-Buffer to compute lighting
   ‣ Add result to frame buffer
‣ Simpler shaders
‣ Scales well with number of lit pixels
‣ Does not handle transparent objects



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
G-Buffer Layout




GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Target Image
Depth
View-space normal
Specular intensity
Specular roughness / Power
Screen-space 2D motion vector
Albedo (texture colour)
Deferred composition
Image with post-processing (depth of field, bloom, motion blur, colorize, ILR)
G-Buffer : Our approach

       R8                      G8                      B8                A8
                        Depth 24bpp                                    Stencil      DS

              Lighting Accumulation RGB                               Intensity     RT0

          Normal X (FP16)                                  Normal Y (FP16)          RT1

        Motion Vectors XY                        Spec-Power        Spec-Intensity   RT2

                    Diffuse Albedo RGB                              Sun-Occlusion   RT3


‣ MRT - 4xRGBA8 + 24D8S (approx 36 MB)
‣ 720p with Quincunx MSAA
‣ Position computed from depth buffer and pixel coordinates



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
G-Buffer : Our approach

       R8                      G8                      B8                A8
                        Depth 24bpp                                    Stencil      DS

              Lighting Accumulation RGB                               Intensity     RT0

          Normal X (FP16)                                  Normal Y (FP16)          RT1

        Motion Vectors XY                        Spec-Power        Spec-Intensity   RT2

                    Diffuse Albedo RGB                              Sun-Occlusion   RT3


‣ Lighting accumulation – output buffer
‣ Intensity – luminance of Lighting accumulation
    ‣ Scaled to range [0…2]
‣ Normal.z = sqrt(1.0f - Normal.x2 - Normal.y2)

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
G-Buffer : Our approach

       R8                      G8                      B8                A8
                        Depth 24bpp                                    Stencil      DS

              Lighting Accumulation RGB                               Intensity     RT0

          Normal X (FP16)                                  Normal Y (FP16)          RT1

        Motion Vectors XY                        Spec-Power        Spec-Intensity   RT2

                    Diffuse Albedo RGB                              Sun-Occlusion   RT3


‣ Motion vectors – screen space
‣ Specular power - stored as log2(original)/10.5
    ‣ High range and still high precision for low shininess
‣ Sun Occlusion - pre-rendered static sun shadows
   ‣ Mixed with real-time sun shadow for higher quality

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
G-Buffer Analysis

‣ Pros:
   ‣ Highly packed data structure
   ‣ Many extra attributes
   ‣ Allows MSAA with hardware support

‣ Cons:
   ‣ Limited output precision and dynamic range
       ‣ Lighting accumulation in gamma space
       ‣ Can use different color space (LogLuv)
   ‣ Attribute packing and unpacking overhead


   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Deferred Rendering Passes




GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Geometry Pass

‣ Fill the G-Buffer with all geometry (static, skinned, etc.)
   ‣ Write depth, motion, specular, etc. properties

‣ Initialize light accumulation buffer with pre-baked light
   ‣ Ambient, Incandescence, Constant specular
   ‣ Lightmaps on static geometry
       ‣ YUV color space, S3TC5 with Y in Alpha
       ‣ Sun occlusion in B channel
       ‣ Dynamic range [0..2]
   ‣ Image based lighting on dynamic geometry


    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Image Based Lighting

‣ Artist placed light probes
   ‣ Arbitrary location and density
   ‣ Sampled and stored as 2nd order spherical harmonics

‣ Updated per frame for each object
   ‣   Blend four closest SHs based on distance
   ‣   Rotate into view space
   ‣   Encode into 8x8 envmap IBL texture
   ‣   Dynamic range [0..2]
   ‣   Generated on SPUs in parallel to other rendering tasks


    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Scene lighting
Decals and Weapon Passes

‣ Primitives updating subset of the G-Buffer
   ‣   Bullet holes, posters, cracks, stains
   ‣   Reuse lighting of underlying surface
   ‣   Blend with albedo buffer
   ‣   Use G-Buffer Intensity channel to fix accumulation
   ‣   Same principle as particles with motion blur

‣ Separate weapon pass with different projection
   ‣ Different near plane
   ‣ Rendered into first 5% of depth buffer range
   ‣ Still reacts to lights and post-processing

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Light Accumulation Pass

‣ Light is rendered as convex geometry
   ‣ Point light – sphere
   ‣ Spot light – cone
   ‣ Sun – full-screen quad

‣ For each light…
   ‣ Find and mark visible lit pixels
   ‣ If light contributes to screen
       ‣ Render shadow map
       ‣ Shade lit pixels and add to framebuffer


   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Determine Lit Pixels

‣ Marks pixels in front of the far light boundary
   ‣   Render back-faces of light volume
   ‣   Depth test GREATER-EQUAL
   ‣   Write to stencil on depth pass
   ‣   Skipped for very small distant lights




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Determine Lit Pixels

‣ Find amount of lit pixels inside the volume
   ‣   Start pixel query
   ‣   Render front faces of light volume
   ‣   Depth test LESS-EQUAL
   ‣   Don’t write anything – only EQUAL stencil test




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Render Shadow Map

‣ Enable conditional rendering
   ‣ Based on query results from previous stage
   ‣ GPU skips rendering for invisible lights

‣ Max 1024x1024xD16 shadow map
   ‣ Fast and with hardware filtering support
   ‣ Single map reused for all lights

‣ Skip small objects
   ‣ Small in shadow map and on screen
   ‣ Artist defined thresholds for lights and objects

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Shade Lit Pixels

‣ Render front-faces of light volume
   ‣ Depth test - LESS-EQUAL
   ‣ Stencil test - EQUAL
   ‣ Runs only on marked pixels inside light

‣ Compute light equation
   ‣ Read and unpack G-Buffer attributes
   ‣ Calculate Light vector, Color, Distance Attenuation
   ‣ Perform shadow map filtering

‣ Add Phong lighting to frame buffer

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Light Optimization

‣ Determine light size on the screen
   ‣ Approximation - angular size of light volume

‣ If light is “very small”
   ‣ Don’t do any stencil marking
   ‣ Switch to non-shadow casting type

‣ Shadows fade-out range
   ‣ Artist defined light sizes at which:
      ‣ Shadows start to fade out
      ‣ Switch to non-shadow casting light

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Sun Rendering

‣ Full screen quad

‣ Stencil mark potentially lit pixels
   ‣ Use only sun occlusion from G-Buffer

‣ Run final shader on marked pixels
   ‣ Approx. 50% of pixels skipped thanks 1st pass
       ‣ Also skybox/background
   ‣ Simple directional light model
   ‣ Shadow = min(RealTimeShadow, Occlusion)



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Sun – Real-Time Shadows

‣ Cascade shadow maps
  ‣ Provide more shadow detail where required
  ‣ Divide view frustum into several areas
     ‣ Split along view distance
     ‣ Split distances defined by artist
  ‣ Render shadow map for each area
     ‣ Max 4 cascades
     ‣ Max 512x512 pixels each in single texture
  ‣ Easy to address cascade in final render




   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Sun – Real-Time Shadows

‣ Issue: Shadow shimmering
   ‣ Light cascade frustums follow camera
   ‣ Sub pixel changes in shadow map

‣ Solution!
   ‣ Don’t rotate shadow map cascade
      ‣ Make bounding sphere of cascade frustum
      ‣ Use it to generate cascade light matrix
   ‣ Remove sub-pixel movements
      ‣ Project world origin onto shadow map
      ‣ Use it to round light matrix to nearest shadow pixel corner


   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Sun - Colored shadow Cascades - Unstable shadow artifacts
MSAA Lighting Details

‣ Run light shader at pixel resolution
   ‣ Read G-Buffer for both pixel samples
   ‣ Compute lighting for both samples
   ‣ Average results and add to frame buffer

‣ Optimization in shadow map filtering
   ‣   Max 12 shadow taps per pixel
   ‣   Alternate taps between both samples
   ‣   Half quality on edges, full quality elsewhere
   ‣   Performance equal to non-MSAA case


    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Forward Rendering Pass

‣ Used for transparent geometry
‣ Single pass solution
   ‣ Shader has four uberlights
   ‣ No shadows
   ‣ Per-vertex lighting version for particles

‣ Lower resolution rendering available
   ‣ Fill-rate intensive effects
   ‣ Half and quarter screen size rendering
   ‣ Half resolution rendering using MSAA HW


   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Post-Processing Pass

‣ Highly customizable color correction
   ‣ Separate curves for shadows, mid-tones, highlight colors, contrast and
     brightness
   ‣ Everything Depth dependent
   ‣ Per-frame LUT textures generated on SPU
‣ Image based motion blur and depth of field
‣ Internal lens reflection
‣ Film grain filter



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Usage and Architecture
             Putting it all together




GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Usage

‣ We use SPU a lot during rendering
   ‣ Display list generation
       ‣ Main display list
       ‣ Lights and Shadow Maps
       ‣ Forward rendering
   ‣ Scene graph traversal / visibility culling
   ‣ Skinning
   ‣ Triangle trimming
   ‣ IBL generation
   ‣ Particles



    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Usage (cont.)

‣ Everything is data driven
   ‣   No “virtual void Draw()” calls on objects
   ‣   Objects store a decision-tree with DrawParts
   ‣   DrawParts link shader, geometry and flags
   ‣   Decision tree used for LODs, etc.

‣ SPUs pull rendering data directly from objects
   ‣ Traverse scenegraph to find objects
   ‣ Process object's decision-tree to find DrawParts
   ‣ Create displaylist from DrawParts


    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

                                                                                PPU

                                                                                SPU 0

                                                                                SPU 1

                                                                                SPU 2

                                                                                SPU 3

 Particles, Skinning         Main scenegraph + displaylist     IBL generation
 edgeGeom                    Shadow scenegraph + displaylist




   GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI
PHYSICS                                                                          PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI    PREPARE
PHYSICS      DRAW                                                                PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI    PREPARE
PHYSICS      DRAW                                                                PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI    PREPARE
PHYSICS      DRAW                                                                PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI    PREPARE
PHYSICS      DRAW                                                                PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

GAME, AI    PREPARE
PHYSICS      DRAW                                                                PPU

                                                                                 SPU 0

                                                                                 SPU 1

                                                                                 SPU 2

                                                                                 SPU 3

  Particles, Skinning         Main scenegraph + displaylist     IBL generation
  edgeGeom                    Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
SPU Architecture

                         DRAW
GAME, AI    PREPARE                             GAME, AI            PREPARE
PHYSICS      DRAW
                         DATA
                                                PHYSICS              DRAW          PPU
                         LOCK


                                                                                   SPU 0

                                                                                   SPU 1

                                                                                   SPU 2

                                                                                   SPU 3

  Particles, Skinning           Main scenegraph + displaylist     IBL generation
  edgeGeom                      Shadow scenegraph + displaylist




    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Conclusion

‣ Deferred rendering works well and gives us artistic
  freedom to create distinctive Killzone look
   ‣   MSAA did not prove to be an issue
   ‣   Complex geometry with no resubmit
   ‣   Highly dynamic lighting in environments
   ‣   Extensive post-process

‣ Still a lot of features planned
   ‣   Ambient occlusion / contact shadows
   ‣   Shadows on transparent geometry
   ‣   More efficient anti-aliasing
   ‣   Dynamic radiosity

    GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2

Más contenido relacionado

La actualidad más candente

Masked Software Occlusion Culling
Masked Software Occlusion CullingMasked Software Occlusion Culling
Masked Software Occlusion CullingIntel® Software
 
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14AMD Developer Central
 
Physically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in FrostbitePhysically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in FrostbiteElectronic 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
 
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
 
Advancements in-tiled-rendering
Advancements in-tiled-renderingAdvancements in-tiled-rendering
Advancements in-tiled-renderingmistercteam
 
Dissecting the Rendering of The Surge
Dissecting the Rendering of The SurgeDissecting the Rendering of The Surge
Dissecting the Rendering of The SurgePhilip Hammer
 
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
 
Low-level Shader Optimization for Next-Gen and DX11 by Emil Persson
Low-level Shader Optimization for Next-Gen and DX11 by Emil PerssonLow-level Shader Optimization for Next-Gen and DX11 by Emil Persson
Low-level Shader Optimization for Next-Gen and DX11 by Emil PerssonAMD Developer Central
 
Checkerboard Rendering in Dark Souls: Remastered by QLOC
Checkerboard Rendering in Dark Souls: Remastered by QLOCCheckerboard Rendering in Dark Souls: Remastered by QLOC
Checkerboard Rendering in Dark Souls: Remastered by QLOCQLOC
 
Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Philip Hammer
 
OpenGL 3.2 and More
OpenGL 3.2 and MoreOpenGL 3.2 and More
OpenGL 3.2 and MoreMark Kilgard
 
Triangle Visibility buffer
Triangle Visibility bufferTriangle Visibility buffer
Triangle Visibility bufferWolfgang Engel
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근MinGeun Park
 
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
 
Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in FrostbitePhysically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in FrostbiteElectronic Arts / DICE
 
Hable John Uncharted2 Hdr Lighting
Hable John Uncharted2 Hdr LightingHable John Uncharted2 Hdr Lighting
Hable John Uncharted2 Hdr Lightingozlael ozlael
 

La actualidad más candente (20)

Masked Software Occlusion Culling
Masked Software Occlusion CullingMasked Software Occlusion Culling
Masked Software Occlusion Culling
 
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
 
Physically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in FrostbitePhysically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in Frostbite
 
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
 
Voxel based global-illumination
Voxel based global-illuminationVoxel based global-illumination
Voxel based global-illumination
 
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)
 
Advancements in-tiled-rendering
Advancements in-tiled-renderingAdvancements in-tiled-rendering
Advancements in-tiled-rendering
 
Dissecting the Rendering of The Surge
Dissecting the Rendering of The SurgeDissecting the Rendering of The Surge
Dissecting the Rendering of The Surge
 
Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based Rendering
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
Hair in Tomb Raider
Hair in Tomb RaiderHair in Tomb Raider
Hair in Tomb Raider
 
Low-level Shader Optimization for Next-Gen and DX11 by Emil Persson
Low-level Shader Optimization for Next-Gen and DX11 by Emil PerssonLow-level Shader Optimization for Next-Gen and DX11 by Emil Persson
Low-level Shader Optimization for Next-Gen and DX11 by Emil Persson
 
Checkerboard Rendering in Dark Souls: Remastered by QLOC
Checkerboard Rendering in Dark Souls: Remastered by QLOCCheckerboard Rendering in Dark Souls: Remastered by QLOC
Checkerboard Rendering in Dark Souls: Remastered by QLOC
 
Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2
 
OpenGL 3.2 and More
OpenGL 3.2 and MoreOpenGL 3.2 and More
OpenGL 3.2 and More
 
Triangle Visibility buffer
Triangle Visibility bufferTriangle Visibility buffer
Triangle Visibility buffer
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
 
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
 
Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in FrostbitePhysically Based Sky, Atmosphere and Cloud Rendering in Frostbite
Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite
 
Hable John Uncharted2 Hdr Lighting
Hable John Uncharted2 Hdr LightingHable John Uncharted2 Hdr Lighting
Hable John Uncharted2 Hdr Lighting
 

Destacado

Deferred shading
Deferred shadingDeferred shading
Deferred shadingFrank Chao
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2Guerrilla
 
Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Guerrilla
 
Siggraph2016 - The Devil is in the Details: idTech 666
Siggraph2016 - The Devil is in the Details: idTech 666Siggraph2016 - The Devil is in the Details: idTech 666
Siggraph2016 - The Devil is in the Details: idTech 666Tiago Sousa
 
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
 
Forward+ (EUROGRAPHICS 2012)
Forward+ (EUROGRAPHICS 2012)Forward+ (EUROGRAPHICS 2012)
Forward+ (EUROGRAPHICS 2012)Takahiro Harada
 
Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Tiago Sousa
 
Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
 
T-recylce the E-waste
T-recylce the E-wasteT-recylce the E-waste
T-recylce the E-wastealind tiwari
 
كيفية نشر مقال في جيران ؟
كيفية نشر مقال في جيران ؟كيفية نشر مقال في جيران ؟
كيفية نشر مقال في جيران ؟guest9e2421
 
20090929_Personal data
20090929_Personal data20090929_Personal data
20090929_Personal datasbur
 
كيفية اضافة كليب الى مقال في جيران ؟
كيفية اضافة كليب الى مقال في جيران ؟كيفية اضافة كليب الى مقال في جيران ؟
كيفية اضافة كليب الى مقال في جيران ؟guest9e2421
 
Final Version Impact Lives Partner Marketing May 7 2010
Final  Version  Impact Lives Partner Marketing May 7 2010Final  Version  Impact Lives Partner Marketing May 7 2010
Final Version Impact Lives Partner Marketing May 7 2010JAH727
 
P A S E O P O R E L V O L G A
P A S E O  P O R  E L  V O L G AP A S E O  P O R  E L  V O L G A
P A S E O P O R E L V O L G Aguest3bb678
 

Destacado (20)

Light prepass
Light prepassLight prepass
Light prepass
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2
 
Siggraph2016 - The Devil is in the Details: idTech 666
Siggraph2016 - The Devil is in the Details: idTech 666Siggraph2016 - The Devil is in the Details: idTech 666
Siggraph2016 - The Devil is in the Details: idTech 666
 
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
 
Forward+ (EUROGRAPHICS 2012)
Forward+ (EUROGRAPHICS 2012)Forward+ (EUROGRAPHICS 2012)
Forward+ (EUROGRAPHICS 2012)
 
DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3
 
Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)
 
Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016Optimizing the Graphics Pipeline with Compute, GDC 2016
Optimizing the Graphics Pipeline with Compute, GDC 2016
 
T-recylce the E-waste
T-recylce the E-wasteT-recylce the E-waste
T-recylce the E-waste
 
كيفية نشر مقال في جيران ؟
كيفية نشر مقال في جيران ؟كيفية نشر مقال في جيران ؟
كيفية نشر مقال في جيران ؟
 
20090929_Personal data
20090929_Personal data20090929_Personal data
20090929_Personal data
 
كيفية اضافة كليب الى مقال في جيران ؟
كيفية اضافة كليب الى مقال في جيران ؟كيفية اضافة كليب الى مقال في جيران ؟
كيفية اضافة كليب الى مقال في جيران ؟
 
Mantra3
Mantra3Mantra3
Mantra3
 
Final Version Impact Lives Partner Marketing May 7 2010
Final  Version  Impact Lives Partner Marketing May 7 2010Final  Version  Impact Lives Partner Marketing May 7 2010
Final Version Impact Lives Partner Marketing May 7 2010
 
P A S E O P O R E L V O L G A
P A S E O  P O R  E L  V O L G AP A S E O  P O R  E L  V O L G A
P A S E O P O R E L V O L G A
 
Lab1_1220880325
Lab1_1220880325Lab1_1220880325
Lab1_1220880325
 
Tpc Pres
Tpc PresTpc Pres
Tpc Pres
 
DOF
DOFDOF
DOF
 

Similar a Deferred Rendering in Killzone 2

Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Slide_N
 
Unity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity Technologies
 
Foveated Ray Tracing for VR on Multiple GPUs
Foveated Ray Tracing for VR on Multiple GPUsFoveated Ray Tracing for VR on Multiple GPUs
Foveated Ray Tracing for VR on Multiple GPUsTakahiro Harada
 
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
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemGuerrilla
 
DD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time RenderingDD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time RenderingElectronic Arts / DICE
 
Rendering Tech of Space Marine
Rendering Tech of Space MarineRendering Tech of Space Marine
Rendering Tech of Space MarinePope Kim
 
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
 
Crysis 2-key-rendering-features
Crysis 2-key-rendering-featuresCrysis 2-key-rendering-features
Crysis 2-key-rendering-featuresRaimundo Renato
 
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingSIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingElectronic Arts / DICE
 
Secrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologySecrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
 
The rendering technology of 'lords of the fallen' philip hammer
The rendering technology of 'lords of the fallen'   philip hammerThe rendering technology of 'lords of the fallen'   philip hammer
The rendering technology of 'lords of the fallen' philip hammerMary Chan
 
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019Unity Technologies
 
NVIDIA effects GDC09
NVIDIA effects GDC09NVIDIA effects GDC09
NVIDIA effects GDC09IGDA_London
 
PixelDisplay DSSC November 2018
PixelDisplay DSSC November 2018PixelDisplay DSSC November 2018
PixelDisplay DSSC November 2018David Wyatt
 
MM-4099, Adapting game content to the viewing environment, by Noman Hashim
MM-4099, Adapting game content to the viewing environment, by Noman HashimMM-4099, Adapting game content to the viewing environment, by Noman Hashim
MM-4099, Adapting game content to the viewing environment, by Noman HashimAMD Developer Central
 
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
 
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex Vlachos
 
Introduction To Geometry Shaders
Introduction To Geometry ShadersIntroduction To Geometry Shaders
Introduction To Geometry Shaderspjcozzi
 

Similar a Deferred Rendering in Killzone 2 (20)

Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2Deferred Rendering in Killzone 2
Deferred Rendering in Killzone 2
 
Unity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity: Next Level Rendering Quality
Unity: Next Level Rendering Quality
 
Foveated Ray Tracing for VR on Multiple GPUs
Foveated Ray Tracing for VR on Multiple GPUsFoveated Ray Tracing for VR on Multiple GPUs
Foveated Ray Tracing for VR on Multiple GPUs
 
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)
 
Killzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo PostmortemKillzone Shadow Fall Demo Postmortem
Killzone Shadow Fall Demo Postmortem
 
DD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time RenderingDD18 - SEED - Raytracing in Hybrid Real-Time Rendering
DD18 - SEED - Raytracing in Hybrid Real-Time Rendering
 
Rendering Tech of Space Marine
Rendering Tech of Space MarineRendering Tech of Space Marine
Rendering Tech of Space Marine
 
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
 
Crysis 2-key-rendering-features
Crysis 2-key-rendering-featuresCrysis 2-key-rendering-features
Crysis 2-key-rendering-features
 
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingSIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
 
Secrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologySecrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics Technology
 
The rendering technology of 'lords of the fallen' philip hammer
The rendering technology of 'lords of the fallen'   philip hammerThe rendering technology of 'lords of the fallen'   philip hammer
The rendering technology of 'lords of the fallen' philip hammer
 
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
 
NVIDIA effects GDC09
NVIDIA effects GDC09NVIDIA effects GDC09
NVIDIA effects GDC09
 
PixelDisplay DSSC November 2018
PixelDisplay DSSC November 2018PixelDisplay DSSC November 2018
PixelDisplay DSSC November 2018
 
MM-4099, Adapting game content to the viewing environment, by Noman Hashim
MM-4099, Adapting game content to the viewing environment, by Noman HashimMM-4099, Adapting game content to the viewing environment, by Noman Hashim
MM-4099, Adapting game content to the viewing environment, by Noman Hashim
 
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
 
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
 
Introduction To Geometry Shaders
Introduction To Geometry ShadersIntroduction To Geometry Shaders
Introduction To Geometry Shaders
 
Deferred lighting
Deferred lightingDeferred lighting
Deferred lighting
 

Más de ozlael ozlael

Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)ozlael ozlael
 
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)ozlael ozlael
 
Optimizing mobile applications - Ian Dundore, Mark Harkness
Optimizing mobile applications - Ian Dundore, Mark HarknessOptimizing mobile applications - Ian Dundore, Mark Harkness
Optimizing mobile applications - Ian Dundore, Mark Harknessozlael ozlael
 
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...ozlael ozlael
 
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.ozlael ozlael
 
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.ozlael ozlael
 
Infinity Blade and beyond
Infinity Blade and beyondInfinity Blade and beyond
Infinity Blade and beyondozlael ozlael
 
스티브잡스처럼 프레젠테이션하기
스티브잡스처럼 프레젠테이션하기스티브잡스처럼 프레젠테이션하기
스티브잡스처럼 프레젠테이션하기ozlael ozlael
 
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)ozlael ozlael
 
Introduce coco2dx with cookingstar
Introduce coco2dx with cookingstarIntroduce coco2dx with cookingstar
Introduce coco2dx with cookingstarozlael ozlael
 
Deferred rendering case study
Deferred rendering case studyDeferred rendering case study
Deferred rendering case studyozlael ozlael
 
Kgc make stereo game on pc
Kgc make stereo game on pcKgc make stereo game on pc
Kgc make stereo game on pcozlael ozlael
 
Modern gpu optimize blog
Modern gpu optimize blogModern gpu optimize blog
Modern gpu optimize blogozlael ozlael
 
Bickerstaff benson making3d games on the playstation3
Bickerstaff benson making3d games on the playstation3Bickerstaff benson making3d games on the playstation3
Bickerstaff benson making3d games on the playstation3ozlael ozlael
 
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)ozlael ozlael
 
Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]ozlael ozlael
 

Más de ozlael ozlael (20)

Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)
 
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
 
Optimizing mobile applications - Ian Dundore, Mark Harkness
Optimizing mobile applications - Ian Dundore, Mark HarknessOptimizing mobile applications - Ian Dundore, Mark Harkness
Optimizing mobile applications - Ian Dundore, Mark Harkness
 
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...
그래픽 최적화로 가...가버렷! (부제: 배치! 배칭을 보자!) , Batch! Let's take a look at Batching! -...
 
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) Unite Seoul Ver.
 
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.
유니티 그래픽 최적화, 어디까지 해봤니 (Optimizing Unity Graphics) NDC15 Ver.
 
Infinity Blade and beyond
Infinity Blade and beyondInfinity Blade and beyond
Infinity Blade and beyond
 
스티브잡스처럼 프레젠테이션하기
스티브잡스처럼 프레젠테이션하기스티브잡스처럼 프레젠테이션하기
스티브잡스처럼 프레젠테이션하기
 
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)
유니티의 라이팅이 안 이쁘다구요? (A to Z of Lighting)
 
Introduce coco2dx with cookingstar
Introduce coco2dx with cookingstarIntroduce coco2dx with cookingstar
Introduce coco2dx with cookingstar
 
Deferred rendering case study
Deferred rendering case studyDeferred rendering case study
Deferred rendering case study
 
Kgc make stereo game on pc
Kgc make stereo game on pcKgc make stereo game on pc
Kgc make stereo game on pc
 
mssao presentation
mssao presentationmssao presentation
mssao presentation
 
Modern gpu optimize blog
Modern gpu optimize blogModern gpu optimize blog
Modern gpu optimize blog
 
Modern gpu optimize
Modern gpu optimizeModern gpu optimize
Modern gpu optimize
 
Bickerstaff benson making3d games on the playstation3
Bickerstaff benson making3d games on the playstation3Bickerstaff benson making3d games on the playstation3
Bickerstaff benson making3d games on the playstation3
 
DOF Depth of Field
DOF Depth of FieldDOF Depth of Field
DOF Depth of Field
 
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
 
Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

Deferred Rendering in Killzone 2

  • 1. GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 2. Deferred Rendering in Killzone 2 Michal Valient Senior Programmer, Guerrilla GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 3. Talk Outline ‣ Forward & Deferred Rendering Overview ‣ G-Buffer Layout ‣ Shader Creation ‣ Deferred Rendering in Detail ‣ Rendering Passes ‣ Light and Shadows ‣ Post-Processing ‣ SPU Usage / Architecture GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 4. Forward & Deferred Rendering Overview GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 5. Forward Rendering – Single Pass ‣ For each object ‣ Find all lights affecting object ‣ Render all lighting and material in a single shader ‣ Shader combinations explosion ‣ Shader for each material vs. light setup combination ‣ All shadow maps have to be in memory ‣ Wasted shader cycles ‣ Invisible surfaces / overdraw ‣ Triangles outside light influence GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 6. Forward Rendering – Multi-Pass ‣ For each light ‣ For each object ‣ Add lighting from single light to frame buffer ‣ Shader for each material and light type ‣ Wasted shader cycles ‣ Invisible surfaces / overdraw ‣ Triangles outside light influence ‣ Lots of repeated work ‣ Full vertex shaders, texture filtering GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 7. Deferred Rendering ‣ For each object ‣ Render surface properties into the G-Buffer ‣ For each light and lit pixel ‣ Use G-Buffer to compute lighting ‣ Add result to frame buffer ‣ Simpler shaders ‣ Scales well with number of lit pixels ‣ Does not handle transparent objects GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 8. G-Buffer Layout GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 10. Depth
  • 17. Image with post-processing (depth of field, bloom, motion blur, colorize, ILR)
  • 18. G-Buffer : Our approach R8 G8 B8 A8 Depth 24bpp Stencil DS Lighting Accumulation RGB Intensity RT0 Normal X (FP16) Normal Y (FP16) RT1 Motion Vectors XY Spec-Power Spec-Intensity RT2 Diffuse Albedo RGB Sun-Occlusion RT3 ‣ MRT - 4xRGBA8 + 24D8S (approx 36 MB) ‣ 720p with Quincunx MSAA ‣ Position computed from depth buffer and pixel coordinates GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 19. G-Buffer : Our approach R8 G8 B8 A8 Depth 24bpp Stencil DS Lighting Accumulation RGB Intensity RT0 Normal X (FP16) Normal Y (FP16) RT1 Motion Vectors XY Spec-Power Spec-Intensity RT2 Diffuse Albedo RGB Sun-Occlusion RT3 ‣ Lighting accumulation – output buffer ‣ Intensity – luminance of Lighting accumulation ‣ Scaled to range [0…2] ‣ Normal.z = sqrt(1.0f - Normal.x2 - Normal.y2) GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 20. G-Buffer : Our approach R8 G8 B8 A8 Depth 24bpp Stencil DS Lighting Accumulation RGB Intensity RT0 Normal X (FP16) Normal Y (FP16) RT1 Motion Vectors XY Spec-Power Spec-Intensity RT2 Diffuse Albedo RGB Sun-Occlusion RT3 ‣ Motion vectors – screen space ‣ Specular power - stored as log2(original)/10.5 ‣ High range and still high precision for low shininess ‣ Sun Occlusion - pre-rendered static sun shadows ‣ Mixed with real-time sun shadow for higher quality GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 21. G-Buffer Analysis ‣ Pros: ‣ Highly packed data structure ‣ Many extra attributes ‣ Allows MSAA with hardware support ‣ Cons: ‣ Limited output precision and dynamic range ‣ Lighting accumulation in gamma space ‣ Can use different color space (LogLuv) ‣ Attribute packing and unpacking overhead GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 22. Deferred Rendering Passes GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 23. Geometry Pass ‣ Fill the G-Buffer with all geometry (static, skinned, etc.) ‣ Write depth, motion, specular, etc. properties ‣ Initialize light accumulation buffer with pre-baked light ‣ Ambient, Incandescence, Constant specular ‣ Lightmaps on static geometry ‣ YUV color space, S3TC5 with Y in Alpha ‣ Sun occlusion in B channel ‣ Dynamic range [0..2] ‣ Image based lighting on dynamic geometry GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 24. Image Based Lighting ‣ Artist placed light probes ‣ Arbitrary location and density ‣ Sampled and stored as 2nd order spherical harmonics ‣ Updated per frame for each object ‣ Blend four closest SHs based on distance ‣ Rotate into view space ‣ Encode into 8x8 envmap IBL texture ‣ Dynamic range [0..2] ‣ Generated on SPUs in parallel to other rendering tasks GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 26. Decals and Weapon Passes ‣ Primitives updating subset of the G-Buffer ‣ Bullet holes, posters, cracks, stains ‣ Reuse lighting of underlying surface ‣ Blend with albedo buffer ‣ Use G-Buffer Intensity channel to fix accumulation ‣ Same principle as particles with motion blur ‣ Separate weapon pass with different projection ‣ Different near plane ‣ Rendered into first 5% of depth buffer range ‣ Still reacts to lights and post-processing GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 27.
  • 28.
  • 29. Light Accumulation Pass ‣ Light is rendered as convex geometry ‣ Point light – sphere ‣ Spot light – cone ‣ Sun – full-screen quad ‣ For each light… ‣ Find and mark visible lit pixels ‣ If light contributes to screen ‣ Render shadow map ‣ Shade lit pixels and add to framebuffer GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 30. Determine Lit Pixels ‣ Marks pixels in front of the far light boundary ‣ Render back-faces of light volume ‣ Depth test GREATER-EQUAL ‣ Write to stencil on depth pass ‣ Skipped for very small distant lights GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 31. Determine Lit Pixels ‣ Find amount of lit pixels inside the volume ‣ Start pixel query ‣ Render front faces of light volume ‣ Depth test LESS-EQUAL ‣ Don’t write anything – only EQUAL stencil test GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 32. Render Shadow Map ‣ Enable conditional rendering ‣ Based on query results from previous stage ‣ GPU skips rendering for invisible lights ‣ Max 1024x1024xD16 shadow map ‣ Fast and with hardware filtering support ‣ Single map reused for all lights ‣ Skip small objects ‣ Small in shadow map and on screen ‣ Artist defined thresholds for lights and objects GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 33. Shade Lit Pixels ‣ Render front-faces of light volume ‣ Depth test - LESS-EQUAL ‣ Stencil test - EQUAL ‣ Runs only on marked pixels inside light ‣ Compute light equation ‣ Read and unpack G-Buffer attributes ‣ Calculate Light vector, Color, Distance Attenuation ‣ Perform shadow map filtering ‣ Add Phong lighting to frame buffer GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 34. Light Optimization ‣ Determine light size on the screen ‣ Approximation - angular size of light volume ‣ If light is “very small” ‣ Don’t do any stencil marking ‣ Switch to non-shadow casting type ‣ Shadows fade-out range ‣ Artist defined light sizes at which: ‣ Shadows start to fade out ‣ Switch to non-shadow casting light GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 35. Sun Rendering ‣ Full screen quad ‣ Stencil mark potentially lit pixels ‣ Use only sun occlusion from G-Buffer ‣ Run final shader on marked pixels ‣ Approx. 50% of pixels skipped thanks 1st pass ‣ Also skybox/background ‣ Simple directional light model ‣ Shadow = min(RealTimeShadow, Occlusion) GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 36. Sun – Real-Time Shadows ‣ Cascade shadow maps ‣ Provide more shadow detail where required ‣ Divide view frustum into several areas ‣ Split along view distance ‣ Split distances defined by artist ‣ Render shadow map for each area ‣ Max 4 cascades ‣ Max 512x512 pixels each in single texture ‣ Easy to address cascade in final render GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 37. Sun – Real-Time Shadows ‣ Issue: Shadow shimmering ‣ Light cascade frustums follow camera ‣ Sub pixel changes in shadow map ‣ Solution! ‣ Don’t rotate shadow map cascade ‣ Make bounding sphere of cascade frustum ‣ Use it to generate cascade light matrix ‣ Remove sub-pixel movements ‣ Project world origin onto shadow map ‣ Use it to round light matrix to nearest shadow pixel corner GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 38. Sun - Colored shadow Cascades - Unstable shadow artifacts
  • 39. MSAA Lighting Details ‣ Run light shader at pixel resolution ‣ Read G-Buffer for both pixel samples ‣ Compute lighting for both samples ‣ Average results and add to frame buffer ‣ Optimization in shadow map filtering ‣ Max 12 shadow taps per pixel ‣ Alternate taps between both samples ‣ Half quality on edges, full quality elsewhere ‣ Performance equal to non-MSAA case GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 40. Forward Rendering Pass ‣ Used for transparent geometry ‣ Single pass solution ‣ Shader has four uberlights ‣ No shadows ‣ Per-vertex lighting version for particles ‣ Lower resolution rendering available ‣ Fill-rate intensive effects ‣ Half and quarter screen size rendering ‣ Half resolution rendering using MSAA HW GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 41. Post-Processing Pass ‣ Highly customizable color correction ‣ Separate curves for shadows, mid-tones, highlight colors, contrast and brightness ‣ Everything Depth dependent ‣ Per-frame LUT textures generated on SPU ‣ Image based motion blur and depth of field ‣ Internal lens reflection ‣ Film grain filter GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 42. SPU Usage and Architecture Putting it all together GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 43. SPU Usage ‣ We use SPU a lot during rendering ‣ Display list generation ‣ Main display list ‣ Lights and Shadow Maps ‣ Forward rendering ‣ Scene graph traversal / visibility culling ‣ Skinning ‣ Triangle trimming ‣ IBL generation ‣ Particles GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 44. SPU Usage (cont.) ‣ Everything is data driven ‣ No “virtual void Draw()” calls on objects ‣ Objects store a decision-tree with DrawParts ‣ DrawParts link shader, geometry and flags ‣ Decision tree used for LODs, etc. ‣ SPUs pull rendering data directly from objects ‣ Traverse scenegraph to find objects ‣ Process object's decision-tree to find DrawParts ‣ Create displaylist from DrawParts GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 45. SPU Architecture PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 46. SPU Architecture GAME, AI PHYSICS PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 47. SPU Architecture GAME, AI PREPARE PHYSICS DRAW PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 48. SPU Architecture GAME, AI PREPARE PHYSICS DRAW PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 49. SPU Architecture GAME, AI PREPARE PHYSICS DRAW PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 50. SPU Architecture GAME, AI PREPARE PHYSICS DRAW PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 51. SPU Architecture GAME, AI PREPARE PHYSICS DRAW PPU SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 52. SPU Architecture DRAW GAME, AI PREPARE GAME, AI PREPARE PHYSICS DRAW DATA PHYSICS DRAW PPU LOCK SPU 0 SPU 1 SPU 2 SPU 3 Particles, Skinning Main scenegraph + displaylist IBL generation edgeGeom Shadow scenegraph + displaylist GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON
  • 53. Conclusion ‣ Deferred rendering works well and gives us artistic freedom to create distinctive Killzone look ‣ MSAA did not prove to be an issue ‣ Complex geometry with no resubmit ‣ Highly dynamic lighting in environments ‣ Extensive post-process ‣ Still a lot of features planned ‣ Ambient occlusion / contact shadows ‣ Shadows on transparent geometry ‣ More efficient anti-aliasing ‣ Dynamic radiosity GUERRILLA | DEVELOP CONFERENCE | JULY ‘07 | BRIGHTON