C3D_RenderTargetSetClear: Allow modification when drawOk = false

This commit is contained in:
fincs 2016-03-25 23:42:58 +01:00
parent 5c4642cd22
commit 806bf123a3

View File

@ -329,8 +329,6 @@ void C3D_RenderTargetDelete(C3D_RenderTarget* target)
void C3D_RenderTargetSetClear(C3D_RenderTarget* target, u32 clearBits, u32 clearColor, u32 clearDepth) void C3D_RenderTargetSetClear(C3D_RenderTarget* target, u32 clearBits, u32 clearColor, u32 clearDepth)
{ {
if (!target->drawOk) return;
if (target->renderBuf.colorBuf.data==NULL) clearBits &= ~C3D_CLEAR_COLOR; if (target->renderBuf.colorBuf.data==NULL) clearBits &= ~C3D_CLEAR_COLOR;
if (target->renderBuf.depthBuf.data==NULL) clearBits &= ~C3D_CLEAR_DEPTH; if (target->renderBuf.depthBuf.data==NULL) clearBits &= ~C3D_CLEAR_DEPTH;
@ -339,7 +337,7 @@ void C3D_RenderTargetSetClear(C3D_RenderTarget* target, u32 clearBits, u32 clear
target->renderBuf.clearColor = clearColor; target->renderBuf.clearColor = clearColor;
target->renderBuf.clearDepth = clearDepth; target->renderBuf.clearDepth = clearDepth;
if (clearBits &~ oldClearBits) if (clearBits &~ oldClearBits && target->drawOk)
{ {
target->drawOk = false; target->drawOk = false;
clearTarget(target); clearTarget(target);