Alternative AA methods and their comparison with traditional MSAA*

Discussion in 'Rendering Technology and APIs' started by mitran, Nov 15, 2009.

  1. joker454

    Veteran

    Joined:
    Dec 28, 2006
    Messages:
    3,819
    Likes Received:
    139
    Location:
    So. Cal.
    The msaa part is free, ie the part that fills in the expanded frame buffer with Z and color data. Tiling isn't free that's true, but for games like MW2 that don't tile, msaa is indeed totally free. Some games aren't compatible with msaa due to their render approach.
     
  2. DeanA

    Newcomer

    Joined:
    Oct 26, 2005
    Messages:
    244
    Likes Received:
    36
    Location:
    Cambridge, UK
    Since SPU processing of a screen pretty much requires the data to be in system/normal memory (as opposed to local memory/VRAM, which can only be read slowly by the CELL), it's not something that could just magically happen.

    Also "reserved SPU" != "idle SPU". It's a common misconception, but I think it's worth pointing out that this isn't the case.

    Cheers,
    Dean
     
  3. deepbrown

    Veteran

    Joined:
    Apr 15, 2007
    Messages:
    3,063
    Likes Received:
    13
    Apparently you can do 16xAA on the PC version...
     
  4. PeterT

    Regular

    Joined:
    May 14, 2002
    Messages:
    702
    Likes Received:
    14
    Location:
    Austria
    I've made a new thread in the algorithms forum for discussing screen space AA here. I think that makes more sense than doing all the discussion here, so that this thread can stay focused on the particular SPU implementation and how it is used in the game.

    Just tell me you won't filter the UI please :p
     
  5. Billy Idol

    Legend

    Joined:
    Mar 17, 2009
    Messages:
    6,067
    Likes Received:
    907
    Location:
    Europe
  6. PeterT

    Regular

    Joined:
    May 14, 2002
    Messages:
    702
    Likes Received:
    14
    Location:
    Austria
    You may notice that I've tried not to use "MLAA" for their technique, but rather "screen-space AA". I think the article is much better now that it acknowledges the older work in the area, which surely had more impact on their method than the very recent Intel paper. Anyway, in the broadest sense any screen space "AA" technique comes down to selective blurring. The difference is just in how much effort you go to to obtain (a) good edges and (b) good weights.
     
  7. Brimstone

    Brimstone B3D Shockwave Rider
    Veteran

    Joined:
    Feb 8, 2002
    Messages:
    1,835
    Likes Received:
    11
    Could the SPU perform Fragment Anti-Aliasing similar to the Matrox Parhelia GPUs?
     
  8. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    7,610
    Likes Received:
    825
    Selective to me implies on/off ... I'd prefer adaptive.
     
  9. PeterT

    Regular

    Joined:
    May 14, 2002
    Messages:
    702
    Likes Received:
    14
    Location:
    Austria
    @Brimstone: SPUs could do something like that, yes, the problem with that was (IIRC) that it's exclusively based on Z-buffer differences, so edges at the same depth (i.e. two connected polygons) would not get any AA at all.

    Sure, English is not my native language so I probably didn't chose the ideal word. Adaptive works for me.
     
  10. assurdum

    Veteran

    Joined:
    Oct 31, 2008
    Messages:
    1,568
    Likes Received:
    0
    From what I have readen in neogaf, 360 The saboteur version too use this filter but SPE give more result with this tech (the author at least said that in the reply.)
     
    #150 assurdum, Dec 10, 2009
    Last edited by a moderator: Dec 10, 2009
  11. semitope

    Banned

    Joined:
    Oct 24, 2009
    Messages:
    180
    Likes Received:
    0
    #151 semitope, Dec 10, 2009
    Last edited by a moderator: Dec 10, 2009
  12. N_B

    N_B
    Regular

    Joined:
    Sep 14, 2009
    Messages:
    684
    Likes Received:
    0
    Location:
    New Zealand
    It could just be doing the "depth/z-based edge blur" that Mercenaries 2 used (also a Pandemic title).
     
  13. Acert93

    Acert93 Artist formerly known as Acert93
    Legend

    Joined:
    Dec 9, 2004
    Messages:
    7,782
    Likes Received:
    162
    Location:
    Seattle
    Nice thing GPUs are growing in math! Could be a reasonable approach due to bandwidth limits.

    As per the # of edges, maybe an adaptive time-based approach (similar to how some games go from 1x-4xMSAA per-frame) would be plausible.

    Looks like Barbarian is interested. I wonder if that other company will be :D Last time I checked they were really tight in regards to the 33ms render time.

    The inverse is all the power on the PC allows testing totally new techniques that are far, far outside the reach of the consoles. Without the PC many of these wouldn't be actively tested. In this sense I find your assessment far too one sided. Seeing the stuff done at Siggraph on PC tech better than consoles (and running in single digit framerates) gives a pretty nice appreciation to what the PC brings to the table.

    Just as interestingly this technique has been toyed with in the PC space for a while. If anything console developers have shown to be focused on PRODUCT more so than experimenting (look at all the up-rezed last gen approaches! the very thing you lament) They just don't have the time. If it were so easy why weren't titles shipping with this in 2006? People have been working with the PS3 for about 4 years and finally someone got this into a commercial game.

    Things take time. If they didn't console games in 2006 would have been matching games of today (as most of the techniques in todays console games are old hat in the PC world from the launch window).

    Keep us posted! This is an exciting development :D

    Others beat me, but yes, MS dumbs down the issue here. The ROPs do single cycle 4xMSAA and the eDRAM provides enough bandwidth to support this with no slow down. The problem of course is tiling--which MS misrepresented as a 2-5% hit. Maybe they weren't expecting todays poly complexity and estimates were based on last gen games; either way it has been an issue. I guess the upside is the MSAA hardware can be used for a number of things other than edge anti-aliasing.

    How about using Memexport (streamout?) iirc it has some issues with tiling (or did), but you would be effectively skipping tiling using this AA method.
     
  14. damienw

    Regular

    Joined:
    Sep 29, 2008
    Messages:
    513
    Likes Received:
    61
    Location:
    LA
    Wow, so it's much more than 2-5%? I always thought THAT figure was awfully high in a closed system. It can't be too much more, can it? Is there someplace I can be directed to read more on real numbers?
     
  15. Acert93

    Acert93 Artist formerly known as Acert93
    Legend

    Joined:
    Dec 9, 2004
    Messages:
    7,782
    Likes Received:
    162
    Location:
    Seattle
    Tiling is going to be variable based on how much geometry crosses where the tile boarder is clipped. I am sure there are developers who have achieved really low penalties for resolving tiles; others have had more issues.
     
  16. Crossbar

    Veteran

    Joined:
    Feb 8, 2006
    Messages:
    1,821
    Likes Received:
    12
    Yes, it was a bit one sided, the PC sure provides a space for innovations as being the most wide spread platform. It is also the platform most used by the Phd students et al doing graphics research all around the world so no wonder people have "toyed" with the MLAA technique in the PC space.
    Anyway there is a saying "necessity is the mother of innovation" and I think that is the reason that this technique was applied on a console game first.

    And who said it was easy? I sure didn“t. I think it is great that the HD consoles still provide a lot of room for innovations and improvements. I remember all the hate the 360 and the PS3 got when they were introduced because they relied on lean multicores instead of one or two fat cores with good single thread performance (not to mention the heterogenous cores of the PS3). As the years go by developers get the grip of them and are able to tap them of probably more performance than if the same die space had been used for good singlethread performance. I personally think its a good thing as it prolong the life of the consoles, but others may disagree. From the third party developers view it would obviously be most convenient if all consoles looked the same, but I do also think they appreciate if the consoles have long life cycles that make investments in new techniques and engines more worthwhile.
     
  17. grandmaster

    Veteran

    Joined:
    Feb 6, 2007
    Messages:
    1,159
    Likes Received:
    0
    With thanks to Barbarian for sharing his compilation of the Intel code, I'm happy to present some "before and after" shots. To ensure an accurate result, all shots processed were full 24-bit RGB dumps/lossless BMPs.

    Battlefield: Bad Company 2 (PS3)
    Um... wow? Interesting to note that there is some loss of detail in the textures, but the overall effect is lovely. Tempted to dump out the entire vid I have of this into an image sequence, process, then turn back into a video :)

    Shot 1: Before After
    Shot 2: Before After
    Shot 3: Before After
    Shot 4: Before After
    Shot 5: Before After
    Shot 6: Before After

    Bayonetta (Xbox 360)
    Effect isn't quite so impactful here on Bayonetta but despite the huge level of detail, it still looks pretty good though loss of detail in textures is significant.

    Shot 1: Before After
    Shot 2: Before After

    Pro Evolution Soccer 2010 (PS3)
    Cut-scenes in the PS3 version have no anti-aliasing and plenty of edges to process.

    Shot 1: Before After
    Shot 2: Before After

    Red Faction: Guerrilla (PS3)
    Similar to Bad Company 2, lots of flat-ish colour and very apparent edges make for a pretty impressive transformation.

    Shot 1: Before After
    Shot 2: Before After
    Shot 3: Before After
    Shot 4: Before After

    Uncharted: Drake's Fortune (PS3)
    Already has 2xMSAA of course, but I picked out a couple of stills that I thought might benefit from the technique, and indeed they do - the first one at least.

    Shot 1: Before After
    Shot 2: Before After
     
    #157 grandmaster, Dec 12, 2009
    Last edited by a moderator: Dec 12, 2009
  18. grandmaster

    Veteran

    Joined:
    Feb 6, 2007
    Messages:
    1,159
    Likes Received:
    0
    Saboteur 360 compared with Intel-processed image and PS3 equivalent shot:

    Shot 1: 360/ Intel-Processed/ PS3
    Shot 2: 360/ Intel-Processed/ PS3
    Shot 3: 360/ Intel-Processed/ PS3
    Shot 4: 360/ Intel-Processed/ PS3
    Shot 5: 360/ Intel-Processed/ PS3
    Shot 6: 360/ Intel-Processed/ PS3
    Shot 7: 360/ Intel-Processed/ PS3

    I'd say the luminance-based approach works pretty well bearing in mind it's runtime versus what I assume is a proof of concept bit of source. Interesting artefacts on Shot 7 though on the red edge of the silver car. Also note the artefacting on the HUD text in shot 4 on both processed 360 and the PS3 shot.
     
  19. djskribbles

    Legend

    Joined:
    Jan 27, 2007
    Messages:
    5,257
    Likes Received:
    667
    Nice work.

    Dramatic difference in BF BC2. :shock:

    I hope this is a game changer and this gets used in most/all future titles.
     
  20. rekator

    Regular

    Joined:
    Dec 21, 2006
    Messages:
    793
    Likes Received:
    30
    Location:
    France
    With the Intel you have also process on all the screen so in the shot 7 this give a better result than the PS3. So it's some "limit" of this technic but due to real time a very good tech! ;)
    The luminance blur edge with a MSAA*2(or combine with blur edge) should probably give very good result.
    D.A 360 use blur edge and MSAA*2 and this work very well. ;)
     
Loading...

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...