diff options
-rw-r--r-- | src/gallium/drivers/nouveau/nv30/nv30_clear.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/nouveau/nv30/nv30_clear.c b/src/gallium/drivers/nouveau/nv30/nv30_clear.c index 118cac77277..c8fa38e20c7 100644 --- a/src/gallium/drivers/nouveau/nv30/nv30_clear.c +++ b/src/gallium/drivers/nouveau/nv30/nv30_clear.c @@ -73,8 +73,13 @@ nv30_clear(struct pipe_context *pipe, unsigned buffers, zeta = pack_zeta(fb->zsbuf->format, depth, stencil); if (buffers & PIPE_CLEAR_DEPTH) mode |= NV30_3D_CLEAR_BUFFERS_DEPTH; - if (buffers & PIPE_CLEAR_STENCIL) + if (buffers & PIPE_CLEAR_STENCIL) { mode |= NV30_3D_CLEAR_BUFFERS_STENCIL; + BEGIN_NV04(push, NV30_3D(STENCIL_ENABLE(0)), 2); + PUSH_DATA (push, 0); + PUSH_DATA (push, 0x000000ff); + nv30->dirty |= NV30_NEW_ZSA; + } } /*XXX: wtf? fixes clears sometimes not clearing on nv3x... */ |