Fix clearing all samples of multisample render targets.
Only libGLESv2 was clearing all the samples of a multisample buffer.
Since all known APIs always clear all the samples, this could be
handled in the Renderer.
Bug swiftshader:77
Change-Id: Ib9adc3c61d263420ed0a0ae4828a693bd360b076
Reviewed-on: https://swiftshader-review.googlesource.com/10788
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/OpenGL/libGLES_CM/Device.cpp b/src/OpenGL/libGLES_CM/Device.cpp
index cb95d0c..26f53bc 100644
--- a/src/OpenGL/libGLES_CM/Device.cpp
+++ b/src/OpenGL/libGLES_CM/Device.cpp
@@ -172,7 +172,7 @@
rgba[2] = blue;
rgba[3] = alpha;
- sw::SliceRect clearRect = renderTarget->getRect();
+ sw::Rect clearRect = renderTarget->getRect();
if(scissorEnable)
{
@@ -190,7 +190,7 @@
}
z = clamp01(z);
- sw::SliceRect clearRect = depthBuffer->getRect();
+ sw::Rect clearRect = depthBuffer->getRect();
if(scissorEnable)
{
@@ -207,7 +207,7 @@
return;
}
- sw::SliceRect clearRect = stencilBuffer->getRect();
+ sw::Rect clearRect = stencilBuffer->getRect();
if(scissorEnable)
{