- intersectRect = IntersectAABB( scissorBox, viewportRect );
- mImpl->currentContext->Scissor( intersectRect.x, intersectRect.y, intersectRect.width, intersectRect.height );
+ mImpl->currentContext->SetScissorTest( true );
+ if( isPartialUpdate )
+ {
+ intersectRect = IntersectAABB( scissorBox, viewportRect );
+ mImpl->currentContext->Scissor( intersectRect.x, intersectRect.y, intersectRect.width, intersectRect.height );
+ }
+ else
+ {
+ mImpl->currentContext->Scissor( viewportRect.x, viewportRect.y, viewportRect.width, viewportRect.height );
+ }
+ mImpl->currentContext->Clear( clearMask, Context::FORCE_CLEAR );
+ mImpl->currentContext->SetScissorTest( false );