Deferred Rendering on PS3 (Was KZ2 Tech Discussion)

Discussion in 'Console Technology' started by patsu, Jan 17, 2009.

Thread Status:
Not open for further replies.
  1. Nano

    Regular

    Joined:
    Dec 7, 2007
    Messages:
    288
    Likes Received:
    0
    Location:
    London, England
    Unless I'm mistaken. Sounds like you're pretty much describing pipelining ;)

    That's the only way you're really going to get so many operations working concurrently anyway. As opposed to sending one instruction after another, they are all in some stage of execution at the same time. Future applications/engines will hope to be more clever with the pipelining process to get as much performance as possible out of the set hardware; be it revising the orders in which instructions are executed, or introducing completely different implementations where the instructions *may* be different altogether.

    Ofc, as you can imagine, nothing is straightforward about sending all these tasks back and forth so there's always room for improvement.
     
  2. betan

    Veteran

    Joined:
    Jan 26, 2007
    Messages:
    2,315
    Likes Received:
    0
    Regarding post processing tasks, I expect the overhead of syncing multiple SPU threads to be insignificant compared to syncing with GPU, especially considering the asymmetric CPU bandwidth.
     
  3. Betanumerical

    Veteran

    Joined:
    Aug 20, 2007
    Messages:
    1,763
    Likes Received:
    280
    Location:
    In the land of the drop bears
    Seems that you are correct. This is what you are talking about right. :?:
     
    #103 Betanumerical, Jan 23, 2009
    Last edited by a moderator: Jan 23, 2009
  4. betan

    Veteran

    Joined:
    Jan 26, 2007
    Messages:
    2,315
    Likes Received:
    0
    Yes it's, but I'm not sure what that profiler is measuring. For all I know, RSX sync may be done by infinite non-blocking loop to check data sent by RSX while SPU sync may be done by blocking messaging.
     
  5. TimothyFarrar

    Regular

    Joined:
    Nov 7, 2007
    Messages:
    427
    Likes Received:
    0
    Location:
    Santa Clara, CA
    Yeah, I wouldn't read too much into those CPU numbers. My guess is that everything but GPU Sync is covered in the total, and unlike the SPU numbers, that "Total Time" ranges from 0-100% (sum of individual items / 2 hyperthreads), so the sum of the individual times can be above 100%. GPU Sync might simply be the time required for all GPU commands to complete CPU side, but the CPU is highly likely doing something else instead of waiting on the GPU during that time.

    Also keep in mind that it was quite a challenge just to read anything in that low resolution video, so, assume numbers are wrong and perhaps from different frames...
     
  6. vanquish

    Banned

    Joined:
    Jun 3, 2008
    Messages:
    462
    Likes Received:
    0
    I agree with the second bit though, didn't extensive culling (thanks to the scripted camera) make God of War the visual showcase it is on PS2?
     
    #106 vanquish, Jan 26, 2009
    Last edited by a moderator: Jan 26, 2009
  7. patsu

    Legend

    Joined:
    Jun 25, 2005
    Messages:
    27,709
    Likes Received:
    145
    Culling is used extensively in quite a few games. It's not the only ingredient for KZ2's prettiness.

    I'd say it's not what they do. It's how they did it and integrated "everything" (art and technology) nicely together that's impressive -- especially when you hear people complaining about insufficient memory.

    I am also curious how much resources KZ2's forward renderer takes (amongst all the deferred rendering tasks). And whether their workflow is any different from the usual.
     
  8. expendable

    Banned

    Joined:
    Jan 31, 2009
    Messages:
    2
    Likes Received:
    0
    Can we get a polygon estimate by someone courageous on this level or certain objects? http://www.gametrailers.com/player/44970.html

    The yellow rails as clearly visible from 20 seconds and onward look damn near perfectly round.



    [MOD: No one deleted your post. Posts from new members sometimes have to wait for moderator approval otherwise the boards would be inundated with spam]
     
  9. Remij

    Regular

    Joined:
    May 3, 2008
    Messages:
    684
    Likes Received:
    1,267
    KZ2 is a visual masterpiece, but has a lot of smoke and mirrors!

    Effects are really what make games look good nowadays.

    *merged posts*

    I dunno if that pic is going to show up, so here's the link. sorry guys.

    http://img89.imageshack.us/my.php?image=kz22om9.png
     
  10. Brad Grenz

    Brad Grenz Philosopher & Poet
    Veteran

    Joined:
    Mar 3, 2005
    Messages:
    2,531
    Likes Received:
    2
    Location:
    Oregon
    Smoke and mirrors is the name of the game for all rasterization. Triangles and texture maps have always been the quick and dirty way of getting 3D on the screen. You judge and engine by how well it hides its shortcuts through misdirection. It's all an illusion, after all.
     
  11. expendable

    Banned

    Joined:
    Jan 31, 2009
    Messages:
    2
    Likes Received:
    0
  12. joker454

    Veteran

    Joined:
    Dec 28, 2006
    Messages:
    3,819
    Likes Received:
    139
    Location:
    So. Cal.
    That's a very good point. It's interesting to me that the KZ2 crew sited Blade Runner as one of their inspirations for the look. I was just watching a behind the scenes dvd on Blade Runner and for the visual look they mention the only way they were able to get it to look so convincing was the combination of filming at night, the constant rain, and the constant fog. Without those none of it looked convincing. KZ2 is similar in that the look is very carefully chosen to maximize the illusion. Keeping everything dark, gritty, all that crap floating around all the time, etc, it's all carefully chosen to maximize the illusion.
     
  13. Arnold Beckenbauer

    Veteran Subscriber

    Joined:
    Oct 11, 2006
    Messages:
    1,756
    Likes Received:
    722
    Location:
    Germany
    http://www.digitalfoundry.org/blog/?p=481

    GTA IV's renderer is a Deferred Renderer (with G-Buffer and other DR's stuff)?
     
  14. TheAlSpark

    TheAlSpark Moderator
    Moderator Legend

    Joined:
    Feb 29, 2004
    Messages:
    22,146
    Likes Received:
    8,533
    Location:
    ಠ_ಠ

    It's an early implementation of Engel's Light Pre-pass renderer, which is different from the Killzone 2 model. In the general sense, they are both deferring the lighting aspect, but the implementations differ quite a bit.
     
  15. the ignoramus

    Regular

    Joined:
    Apr 26, 2008
    Messages:
    365
    Likes Received:
    0
    This article says that LittleBigPlanet also used deferred rendering. Was this well known? (inFamous is another Sony title that uses it)
    Link



    Jan Bart van Beek, art and animation director at Guerilla, on deferred rendering advantages:

    (Develop- Issue 91-Feb 2009)
     
    #115 the ignoramus, Feb 25, 2009
    Last edited by a moderator: Feb 25, 2009
  16. abcgamer

    Newcomer

    Joined:
    Feb 7, 2009
    Messages:
    22
    Likes Received:
    0
    Thanks for the links Pastu :cool: :smile:

    I will have a go at those pdf later. I do not like dark games too much but KZ2 nice dynamic lightning and special effect, post processing effect makes this game stand out of any other game I have seen. Of course Crysis is most advanced game but I think KZ2 is at the top of the hill ATM when it comes to consoles :cool:
     
  17. Arnold Beckenbauer

    Veteran Subscriber

    Joined:
    Oct 11, 2006
    Messages:
    1,756
    Likes Received:
    722
    Location:
    Germany
    Deferred Rendering is defined by creating a G-Buffer, isn't it? So no G-Buffer = no Deferred Rendering. :?:
     
  18. TheAlSpark

    TheAlSpark Moderator
    Moderator Legend

    Joined:
    Feb 29, 2004
    Messages:
    22,146
    Likes Received:
    8,533
    Location:
    ಠ_ಠ
  19. sebbbi

    Veteran

    Joined:
    Nov 14, 2007
    Messages:
    2,924
    Likes Received:
    5,296
    Location:
    Helsinki, Finland
    Light indexed deferred renderers do not have g-buffers. You have light index buffers instead.

    We were evaluating a lot of different deferred shading (and forward shading) methods for our new Xbox 360 game, and LIDR was the best method when used in combination with stencil shadows (our older PC SM2.0/3.0 engine used stencil shadows). However LIDR is not that well suited for shadow mapped lights, and stencil shadows are no longer that attractive shadowing method (high geometry complexity and depth complexity cause huge overdraw and fill rate cost... and non-geometry occluders cannot be supported).

    So in the end we were bounding back and forth between forward rendering and standard deferred shading. Our deferred renderer used KZ2/Uncharted style screen split into quads and rendering multiple lights per at once, however we added depth bounds test to the lights to speed up the performance (downscaled depth buffer storing min and max depth of the quad).

    According to our testing, deferred shading seems to be the best fit for performance this generation when antialiasing is not used, and the performance advantage should increase in the future. In our testing, deferred shading had slightly better performance even when all local lights were disabled: only a single sunlight with 3 split PSSM shadow map with ESM filtering (for soft shadows) and gray scale alpha masks (for transparent occluders).

    The slight deferred shading performance advantage was mainly explained by reduced shader overdraw:
    1. Hi-depth culling is not pixel precise: overdraw near all depth boundaries (fences etc have 2 x overdraw, and 3 x for two fences, etc)
    2. Hi-depth culling bit depth is limited: 2x overdraw on surfaces near each other (signs, posters on walls, etc)
    3. Object inner overdraw: Object polygons are only presorted (tipsify) and it's not perfect on all view angles. On worst cases this can cause 2-3x overdraw on a single object.
    The average pixel overdraw was around 1.4x for our average scene (we depth sorted objects by center points), and around 4x for the most pathological cases (looking a wall with a large poster though a fence). Deferred sharing guaranteed that we only process each light once per pixel. The cost of the g-buffer rendering with only one light was almost equal to the cost saved by the average 1.4x overdraw (lighting shader is very expensive compared to the shader that renders the g-buffer). And with multiple local lights deferred shader got considerably faster.

    Other reasons for deferred renderer performance increases (over forward renderer) was the much reduced need for state changes and light processing during the scene rendering (this mainly reduced CPU load) and we could do more precompiled static shader versions instead of relying on static brancing on shaders (a small perf hit for the shaders). With deferred sharing the lighting and g-buffer rendering shaders can be completely separated, and this dramatically reduces the need of different shader combinations (n+m instead of n*m).

    I expect many developers in the future reach similar conclusions. However deferred shading has it's weaknesses. The extra antialiasing cost is the main issue. The extra memory usage is not that big deal, and according to our testing deferred shading only consumes very little extra bandwidth (the less overdraw means less sampled shadow map pixels, etc...).
     
  20. Silent_Buddha

    Legend

    Joined:
    Mar 13, 2007
    Messages:
    19,426
    Likes Received:
    10,320
    /cry... /sob...

    No AA? /sigh.

    I can't count how many games visually just go into the toilet (for me) when I see all the jaggies crawling around. GT5 could have looked so good for example. But it looks like utter poo in motion with horrible crawling aliasing in what might otherwise have been a fantasic graphics showcase.

    Here's to hoping next next gen consoles get it right and enforce the use of AA. /sigh...

    Regards,
    SB
     
Loading...
Thread Status:
Not open for further replies.

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...