diff options
author | Roland Scheidegger <sroland@vmware.com> | 2010-05-28 23:57:47 +0200 |
---|---|---|
committer | Roland Scheidegger <sroland@vmware.com> | 2010-05-28 23:57:47 +0200 |
commit | 0cd70b554cb0bb9280f83fddf4f1451fddd37230 (patch) | |
tree | 39c4dfc0433c6190d78f1716ae8e54c96a757568 /src/gallium/auxiliary/util | |
parent | d3f598a506d911e7cbbe561a798d284a154da3cd (diff) |
gallium: clear interface changes
clears were a bit limited in gallium:
- no scissoring (OGL only) nor explicit rectangle list (d3d9)
- no color/stencil masks (OGL only)
- no separate depth/stencil clears (d3d9/d3d10/OGL)
- cannot really clear single color buffer (only with resource_fill_region)
Additionally, d3d can clear surfaces not currently bound to the framebuffer.
It is, however, not easy to find some common ground what a clear should be able
to do, due to both API requirements and also hw differences (a case which might
be able to use a special clear path on one hw might need a "normal" quad render
on another).
Hence several clear methods are provided, and a driver should implement all of
them.
- clear: slightly modified to also be able to clear only depth or stencil in a
combined depth/stencil surface. This is however optional based on driver
capability though ideally it wouldn't be optional. AFAIK this is in fact
something used by applications quite a bit.
Otherwise, for now still doesn't allow clearing with scissors/mask (or single
color buffers)
- clearRT: clears a single (potentially unbound) color surface. This was formerly
roughly known as resource_fill_region. mesa st will not currently use this,
though potentially would be useful for GL ClearBuffer.
- clearDS: similar to above except for depth stencil surfaces.
Note that clearDS/clearRT currently handle can handle partial clear. This might
change however.
Diffstat (limited to 'src/gallium/auxiliary/util')
0 files changed, 0 insertions, 0 deletions