News for hackers. Stuff that matters.
Re:The Evolution of Direct3D by merlish on Monday July 22, 2013 @07:35AM (#6083071)
Really interesting post which I enjoyed immensely, and a good point about being able to create custom renderers with DirectCompute/OpenCL and skip all the legacy baggage while harnessing the ultimate powah of modern GPUs. (Reckon we'll see a bit of this sort of stuff in some PS4 games later on in the console generation.)

Not a new idea, but one I'm glad to be reminded of.

I'm totally going to put some time into playing with this. Anyone here already doing something cool in the custom GPU renderer space?

Re:The Evolution of Direct3D by kevingadd on Monday July 22, 2013 @08:48AM (#6083297)
I know multiple devs on PS3 were using the SPUs to rasterize low resolution depth buffers, so that they could then do occlusion culling without hitting the GPU at all. I expect we'll see similar approaches using GPU compute in the future, assuming people can get the latency down low enough so that it still beats native GPU occlusion queries.
Re:The Evolution of Direct3D by pandaman on Monday July 22, 2013 @11:25AM (#6084274)
Several titles probably did it (I only know of one for sure) but it does not mean it's any good technique.

You see, on PS3 GPU there are no pixel shader constant registers. This means you need to patch shader code if you want any alterations in your pixel shader. A naive approach, with patching on CPU when submitting every primitive, is horrendously slow because the CPU sucks at moving large amounts of data. A slightly faster approach, using the GPU DMA, is still unbelievably slow, because even though the GPU moves large amounts of data very quickly it takes a lot of time to switch between pushing triangles to copying mem ranges and back. Luckily, on the PS3 there are also SPUs, pretty good at moving large amounts of data and having no penalty for doing so. Patching shaders on SPUs is so fast you forget about it. Also very easy to write.

So the mind boggles when you see people using GPU patching and, to somehow save peformance, do some complicated scheme with occlusion culling via SPU.

Re:The Evolution of Direct3D by kevingadd on Monday July 22, 2013 @01:36PM (#6085193)
Wait, really? Isn't the RSX a DX9-class GPU? How does it not have any constant registers?
Re:The Evolution of Direct3D by pandaman on Monday July 22, 2013 @01:50PM (#6085283)
No version of DX mandates any specific hardware architecture. Otherwise you would not be able to run DX9 games on modern hardware that also does not have constant registers.
Re:The Evolution of Direct3D by malkia on Monday July 22, 2013 @03:42PM (#6086040)
It coud be that all nvidia drivers (for pc) that is we're doing constant patching with some clever caching behind the driver.
Re:The Evolution of Direct3D by pandaman on Monday July 22, 2013 @04:28PM (#6086253)
Indeed. There is a reason the draw primitive rate is so different on the PS3 and a PC with the same GPU.
Re:The Evolution of Direct3D by psorcerer on Thursday July 25, 2013 @08:37AM (#6102088)
AFAIR, "native" occlusion queries and conditional rendering are so prohibitively slow in D3D today that nobody uses them anyway.
Re:The Evolution of Direct3D by pjmlp on Monday July 22, 2013 @08:49AM (#6083307)
I remember reading some references about GPU voxel engines and raymarching in the demoscene, not sure about real games.