Does this quote hint that RSX has geometry shaders?

hmmmm...

Let's discuss the main innovations from left to right. First of all, uniform (with identical features) access to textures is now possible at three pipeline stages — at the stage of a vertex shader, then at the stage of geometry shader, and certainly at the stage of a pixel shader. Samplers are accessible at all stages, they allow to select several neighbouring values from a texture by a single calculated texture coordinate, which may help significantly facilitate implementation of custom filtering algorithms or operations with non-trivial data representations and special maps. The usual stage of a vertex shader is followed by geometry shader. What is it? It's a shader that manages triangles (assembled from vertices) as entities before they are drawn. That is it can manipulate triangles as objects. Including some control or additional vertex parameters. It can change these parameters, calculate new parameters, specific for the triangle as a whole, and then pass them to a pixel shader. It can mark a triangle with a predicate (and then process it differently, depending on the predicate value), or exclude it from candidates to be drawn. Unfortunately, this shader unexpectedly cannot create new geometry and new triangles at its output, but it's followed by another new stage — Stream Out.


http://www.digit-life.com/articles2/video/longhorn.html
 
Brimstone, RSX has no reason to have geometry shaders. Heck, G80/R600-level GS will be nothing mind blowing anyway, performance-wise, so it doesn't fit into the idea of a console. And any valid reference to GS-like operations you might find on the PS3 would be done on the SPEs, so I'm not sure what's your point either way :)

Uttar
 
Brimstone, RSX has no reason to have geometry shaders. Heck, G80/R600-level GS will be nothing mind blowing anyway, performance-wise, so it doesn't fit into the idea of a console. And any valid reference to GS-like operations you might find on the PS3 would be done on the SPEs, so I'm not sure what's your point either way :)

Uttar


The way I understand it, Geometry Shaders are a big win for particle systems, cube mapping, shadow mapping, and hair generation.
 
Samplers are accessible at all stages, they allow to select several neighbouring values from a texture by a single calculated texture coordinate, which may help significantly facilitate implementation of custom filtering algorithms or operations with non-trivial data representations and special maps.
What a shock. That's true even now without Geometry shaders. And any sort of texture filtering operations you do at the geometry shader stage has little to do with texture filtering you might do at another stage. In any case, it's hardly advisable to use them in any stage other than pixel shaders anyway because the thread granularity to cover up latencies is there.

The way I understand it, Geometry Shaders are a big win for particle systems, cube mapping, shadow mapping, and hair generation.
Creating geometry is possible through geometry shaders, but it's highly advised that you never do it (btw, I think you mean shadow volumes, not shadow maps). And I fail to see how this is any sort of evidence that RSX has geometry shading features as opposed to wishful thinking on your part which has massively clouded any better judgment and/or reading comprehension you might otherwise have had.
 
The way I understand it, Geometry Shaders are a big win for particle systems, cube mapping, shadow mapping, and hair generation.
Cube mapping might not be a win with geometry shaders. It depends on where the bottleneck is. With and without GS you have to transform the same number of vertices. With GS the graphics chip does extra calculations and there is only one draw packet. Without GS there are multiple draw packets (render calls). So if the app isn't CPU limited to begin with there might be no benefit to cube mapping with the GS.

Also, DX9 cards are very fast at drawing particles so it only makes sense to use the GS for this if you plan to have the GPU perform non render tasks like creating and destroying particles. So using GS for particles is more about flexibility and offloading the CPU than about improved performance for the GPU.

Cell seems like it would make a very good GS so I doubt RSX supports them.
 
Back
Top