mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 02:28:10 +02:00
st/nine: Clear rendertarget on creation
Clear every rendertarget on creation. Fixes https://github.com/iXit/Mesa-3D/issues/139 Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
parent
b142f61621
commit
fa887ba65b
1 changed files with 9 additions and 0 deletions
|
|
@ -56,6 +56,9 @@ NineSurface9_ctor( struct NineSurface9 *This,
|
|||
D3DSURFACE_DESC *pDesc )
|
||||
{
|
||||
HRESULT hr;
|
||||
union pipe_color_union rgba = {0};
|
||||
struct pipe_surface *surf;
|
||||
struct pipe_context *pipe = pParams->device->pipe;
|
||||
|
||||
DBG("This=%p pDevice=%p pResource=%p Level=%u Layer=%u pDesc=%p\n",
|
||||
This, pParams->device, pResource, Level, Layer, pDesc);
|
||||
|
|
@ -140,6 +143,12 @@ NineSurface9_ctor( struct NineSurface9 *This,
|
|||
if (pResource && NineSurface9_IsOffscreenPlain(This))
|
||||
pResource->flags |= NINE_RESOURCE_FLAG_LOCKABLE;
|
||||
|
||||
/* TODO: investigate what else exactly needs to be cleared */
|
||||
if (This->base.resource && (pDesc->Usage & D3DUSAGE_RENDERTARGET)) {
|
||||
surf = NineSurface9_GetSurface(This, 0);
|
||||
pipe->clear_render_target(pipe, surf, &rgba, 0, 0, pDesc->Width, pDesc->Height);
|
||||
}
|
||||
|
||||
NineSurface9_Dump(This);
|
||||
|
||||
return D3D_OK;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue