dacostafilipe
Senior member
- Oct 10, 2013
- 810
- 315
- 136
Oh god. There is a lot of misunderstanding here.
Drivers: So D3D12 is a low-level API. The drivers will be mainly shader compliers. This is the evolution of the low-level approach. Most things that the drivers previously handled "automatically" will be handled by the application itself. It must be optimized for every GPU IP by the developers. I don't want to oversimplify this, but in some aspect it is safe to say that the application will be the graphics driver.
New features:
Rasterizer Ordered Views - this is actually a memory view ordering option and it is possible in Mantle or GNM. The GPU can wait for GDS changes preventing the further shader execution until it will be safe.
Typed UAV Load - as I said Mantle use a simplified resource model so there is no UAV, SRV, CBV, and other buffer types. There is only memory and image. This is a more robust solution because you don't need to care about legacy stuff. With the image buffer type everything is possible. Every shader stage can write to or read from it, and it supports every format. So Mantle don't need these new resource types to support more functions, because the base resource model allow everything.
Volume Tiled Resources - with explicit memory management it is possible in Mantle and GNM.
Conservative Raster - well conservative rasterization is not really a hardware feature. I'm actually wrote some code with conservative rasterization ten years ago when I bought a GeForce 6800. It was fun. Anyway certainly it is possible in Mantle and GNM also.
Keep in mind that the low-level APIs will simplify the access to the hardware. In the past, many new features came to the API because the driver actually hid the GPU memory from the application. So if we want something new, it had to be implemented in the API, and then a new driver introduced the supporf for it. This is where the application can access the new feature. But in the future this will change, because the new low-level model will allow explicit access to the GPU memory. So if we want something new we can implement it. This simple.
Sure it will hurt the marketing departments, because they don't able to sell new fancy buzzwords to the market, but look at NVIDIA they are now selling effects as a feature. It's bullshit but nobody cares about it. This is the evolution of the marketing.
+1 (again
Only adding that Nvidia's VXGI uses most of those "new" features. But Nvidia also states:
... it is possible for VXGI to run across a
wide range of hardware, including Kepler GPUs, console hardware, etc. ...
