- Oct 16, 2006
- 1,651
- 473
- 136
Good video of one of the cutting edge tech innovations inside AMD's GCN architecture.
http://www.youtube.com/watch?v=s2y7e3Zm1xc&feature=youtu.be
http://www.youtube.com/watch?v=s2y7e3Zm1xc&feature=youtu.be
Would everything work properly with nvidia cards?
If some of these features only work on AMD cards,I think devs would be less likely to use it.
----------------Deferred Shadeing (http://en.wikipedia.org/wiki/Deferred_shading):Well, there are two main methods to render 3d games. Forward Rendering was the original, old school one; Deferred Rendering was the new kid on the block. Each one had it's pros and cons, and the main pro of the deferred rendering was that it had a much lesser performance hit when dealing with multiple light sources and was a relatively simple method; because of that Deferred Rendering became eventually the "go to" method for most important rendering engines.
The problem is that D.R. brings a list of cons in the form of heavier performance hit when handling multiple materials, and because it usually discards the geometry data it can't really apply proper MultiSampling antialiasing. The solution for 1) chosen by most devs was "ok, we won't use multiple materials! i mean, texturing alone is good enough, right?" the solution for 2) was "we will create a special buffer, let's call it G buffer, and we will store geometry data and some other useful things there!". Problem is that the G buffer eats memory like nothing, and if you try to use different materials, each material makes the G buffer even bigger (on top of the performance hit).
At AMD this D.R. became a royal pain in the ass, since their gpu designs were made with proper MSAA in mind, and thus this workaround has made them take significantly bigger performance hits than on Nvidia's hardware, and thus they have been hard at work until they got this solution.
The solution they found is to run a proper compute shader to apply the lighting to the Forward Rendered image, instead of the usual way of "Render everything 1 time for each light source in the scene!" This way they save a great deal of passes, they save on memory by not needing the G buffer (the geometry is always present on a Forward Renderer, instead of discarded), they can use the proper MSAA included on their original gpu design, and multiple materials can be used without the big performance & memory hit of the DR, all it takes is compute time for the new shader.
So, this demo to a game dev should be interesting in the form of the performance achieved with a FR engine while dealing with multiple light sources, the lack of a noticeable performance and memory useage hit due to the multiple materials & the use of "proper" MSAA.
Yes, absolutely, there's nothing AMD specific about it.Would everything work properly with nvidia cards?
Great demo, very informative. I hope these techniques catch on, but I fear they won't until the next console generation. Deferred rendering is the king of console graphics engines right now, and rebuilding a game's rendering engine from deferred to forward+ just for a PC port would take a lot of development resources. We might get it from a PC-exclusive strategy game or an AMD Gaming Evolved title that AMD really, really pushes for.
I do wonder though if any games already have a form of this rendering tech. Total War: Shogun 2 only supports MSAA in its DirectX 11 renderer, and it's both a Gaming Evolved title and a PC exclusive strategy game. Perhaps AMD helped to implement an early form of this tech there.
There are a few gaming evolved titles out that use forward+ rendering techniques like Dirt Showdown, Sniper Elite. There is a list on AMD's website.
There are a few gaming evolved titles out that use forward+ rendering techniques like Dirt Showdown, Sniper Elite. There is a list on AMD's website.
Sniper Elite V2 uses Unreal Engine 3, that's about as deferred as they come.
You're correct on Dirt Showdown though.
The main part uses the DX11 API for Direct Compute so that should work on Nvidia hardware. How well it work on the GTX 600 series is a different matter.
That's good. Hopefully more devs start using it.
HOWEVER, if it is even a bit slower on nVidia cards, they will not be behind it I'm guessing, making it less likely to take off.
*UE3 is forward renderer with deferred shadows and post processing.Sniper Elite V2 uses Unreal Engine 3, that's about as deferred as they come.
There are a few gaming evolved titles out that use forward+ rendering techniques like Dirt Showdown,.
UE3 is forward renderer with deferred shadows and post processing.
Yes, as you said it's late addition and I'm not sure if any game actually uses it yet.Ah, I see. Later revisions of UE3 do support deferred shading though.
Ah come on now, vendor-agnostic technology is good for everyone. *glares at PhysX*
And this is exactly what I was thinking of, and why I hate PhysX so much and hope it remains marginalized.
Wow i never heard of this game til now.. SquareEnix making an adult game? Nice, i'm in.
