[Mesa-dev] separate depth and stencil buffers in gallium
sroland at vmware.com
Thu Sep 23 06:59:39 PDT 2010
On 22.09.2010 23:03, Ian Romanick wrote:
> Dave Airlie wrote:
>> So Evergreen hardware appears to have only completely separate depth
>> and stencil buffers and doesn't natively support a combnined DS buffer
>> from what I can see. I'm awaiting clarification from AMD.
>> Now gallium and st/mesa seem to be quite dedicated to the whole
>> combined DS cause.
>> I'm mainly posting just wondering if anyone else has considered this
>> or any other hardware this might be useful for exists, or if anyone
>> can speak to the pitfalls I'll face.
> Since separate depth / stencil is a required feature in some late
> version of DX (11?), you can be sure that it will start appearing in
> other hardware over the next year or so.
Where did you see that? I don't really see separate depth/stencil
buffers in d3d11. What is new in d3d11 are flags to mark either the
depth or stencil portion in a depthstencil buffer as read only, but the
view is still combined.
These new flags say "Limiting a depth-stencil buffer to read-only access
allows more than one depth-stencil view to be bound to the pipeline
simultaneously, since it is not possible to have a read/write conflicts
between separate views."
But the buffers are still combined (and I can't see how you could
actually do what is stated there as OMSetRenderTargets still only takes
one dsv but I'm probably missing something).
Also, even in d3d10, you had formats which only have stencil (s8) or z.
But you can't set two of them simultaneously (with OMSetRenderTargets),
so you will have either no stencil buffer or no depth buffer when you
use them - that can technically still be described as a combined buffer.
So I think Keith is right - d3d10/11 doesn't care if these are
physically separate or not.
More information about the mesa-dev