[Mesa-dev] [PATCH 19/45] st/nine: Clear rendertarget on creation
Axel Davy
axel.davy at ens.fr
Fri Jan 29 10:48:54 PST 2016
Yes, we don't use render conditions.
On 29/01/2016 17:46, Ilia Mirkin wrote:
> Pretty sure this isn't an issue for you since DX9 didn't have render
> conditions (right?) but clear_render_target is documented to respect
> the render condition. Assuming you never set a render condition this
> is all good.
>
> -ilia
>
> On Fri, Jan 29, 2016 at 11:08 AM, Axel Davy <axel.davy at ens.fr> wrote:
>> From: Patrick Rudolph <siro at das-labor.org>
>>
>> Clear every rendertarget on creation.
>> Fixes https://github.com/iXit/Mesa-3D/issues/139
>>
>> Signed-off-by: Patrick Rudolph <siro at das-labor.org>
>> Reviewed-by: Axel Davy <axel.davy at ens.fr>
>> ---
>> src/gallium/state_trackers/nine/surface9.c | 9 +++++++++
>> 1 file changed, 9 insertions(+)
>>
>> diff --git a/src/gallium/state_trackers/nine/surface9.c b/src/gallium/state_trackers/nine/surface9.c
>> index 14c1ce9..9e5f191 100644
>> --- a/src/gallium/state_trackers/nine/surface9.c
>> +++ b/src/gallium/state_trackers/nine/surface9.c
>> @@ -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;
>> --
>> 2.7.0
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list