jAkUp
07-07-06, 09:17 PM
http://www.extremetech.com/article2/0,1697,1985159,00.asp
ET: We know that DX10 has unified pixel, vertex, and geometry shaders on the API level, but it doesn't dictate the hardware implementation—it's possible to have DX10-compliant graphics cards with discrete pixel and vertex/geometry shaders. Do you think the time is right to bring them together, or is there still some benefit from having separate units on a hardware level?
Drebin: One thing we can see even with today's games is that the amount of vertex and pixel processing even within a single frame can vary widely. Something like a sky or an object that's large and close to the camera may maximize the pixel shaders, while in the same frame, something like a character that's off in the distance could have a high polygon count but not take up too many pixels, and that may maximize the vertex shaders. Developers today have to account for all of this.
With DirectX 10, developers will have to also contend with the addition of the geometry shader, making it even harder to balance the workload. With a unified shader architecture, developers are free to make a scene how they want, focusing on pixel processing, vertex processing or geometry processing as they see fit without the restrictions of the ratio chosen for them in a discrete shader implementation. No longer are developers pixel constrained or vertex constrained; with a unified shader architecture, they become compute constrained, able to play with the total performance available to them in the GPU. Today developers are already seeing the benefits of unified shading on the Xbox360, and we're confident that those developers who have enjoyed the freedom of a unified architecture will find it hard to go back.
ET: We know that DX10 has unified pixel, vertex, and geometry shaders on the API level, but it doesn't dictate the hardware implementation—it's possible to have DX10-compliant graphics cards with discrete pixel and vertex/geometry shaders. Do you think the time is right to bring them together, or is there still some benefit from having separate units on a hardware level?
Drebin: One thing we can see even with today's games is that the amount of vertex and pixel processing even within a single frame can vary widely. Something like a sky or an object that's large and close to the camera may maximize the pixel shaders, while in the same frame, something like a character that's off in the distance could have a high polygon count but not take up too many pixels, and that may maximize the vertex shaders. Developers today have to account for all of this.
With DirectX 10, developers will have to also contend with the addition of the geometry shader, making it even harder to balance the workload. With a unified shader architecture, developers are free to make a scene how they want, focusing on pixel processing, vertex processing or geometry processing as they see fit without the restrictions of the ratio chosen for them in a discrete shader implementation. No longer are developers pixel constrained or vertex constrained; with a unified shader architecture, they become compute constrained, able to play with the total performance available to them in the GPU. Today developers are already seeing the benefits of unified shading on the Xbox360, and we're confident that those developers who have enjoyed the freedom of a unified architecture will find it hard to go back.