Fix support for variable number of render targets.
Bug 19353282
Change-Id: I4e99589477de32bb8004feec673e1dbddb675047
Reviewed-on: https://swiftshader-review.googlesource.com/5144
Reviewed-by: Alexis Hétu <sugoi@google.com>
Tested-by: Nicolas Capens <capn@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/Renderer/PixelProcessor.cpp b/src/Renderer/PixelProcessor.cpp
index 02d4c56..636351a 100644
--- a/src/Renderer/PixelProcessor.cpp
+++ b/src/Renderer/PixelProcessor.cpp
@@ -959,13 +959,9 @@
state.logicalOperation = context->colorLogicOp();
- state.colorWriteMask = (context->colorWriteActive(0) << 0) |
- (context->colorWriteActive(1) << 4) |
- (context->colorWriteActive(2) << 8) |
- (context->colorWriteActive(3) << 12);
-
for(int i = 0; i < RENDERTARGETS; i++)
{
+ state.colorWriteMask |= context->colorWriteActive(i) << (4 * i);
state.targetFormat[i] = context->renderTargetInternalFormat(i);
}