Fixed a rounding bug in copyTexture and removed a redundant parameter blend state setting.
TRAC #22416
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Geoff Lang
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1865 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/Renderer11.cpp b/src/libGLESv2/renderer/Renderer11.cpp
index a41043b..38c408a 100644
--- a/src/libGLESv2/renderer/Renderer11.cpp
+++ b/src/libGLESv2/renderer/Renderer11.cpp
@@ -2478,10 +2478,10 @@
d3d11::PositionTexCoordVertex *vertices = static_cast<d3d11::PositionTexCoordVertex*>(mappedResource.pData);
// Create a quad in homogeneous coordinates
- float x1 = (destArea.x / destWidth) * 2.0f - 1.0f;
- float y1 = (destArea.y / destHeight) * 2.0f - 1.0f;
- float x2 = ((destArea.x + destArea.width) / destWidth) * 2.0f - 1.0f;
- float y2 = ((destArea.y + destArea.height) / destHeight) * 2.0f - 1.0f;
+ float x1 = (destArea.x / float(destWidth)) * 2.0f - 1.0f;
+ float y1 = (destArea.y / float(destHeight)) * 2.0f - 1.0f;
+ float x2 = ((destArea.x + destArea.width) / float(destWidth)) * 2.0f - 1.0f;
+ float y2 = ((destArea.y + destArea.height) / float(destHeight)) * 2.0f - 1.0f;
float u1 = sourceArea.x / float(sourceWidth);
float v1 = sourceArea.y / float(sourceHeight);
@@ -2500,8 +2500,7 @@
mDeviceContext->IASetVertexBuffers(0, 1, &mCopyVB, &stride, &startIdx);
// Apply state
- static const float blendFactor[4] = { 1.0f, 1.0f, 1.0f, 1.0f };
- mDeviceContext->OMSetBlendState(NULL, blendFactor, 0xFFFFFFF);
+ mDeviceContext->OMSetBlendState(NULL, NULL, 0xFFFFFFF);
mDeviceContext->OMSetDepthStencilState(NULL, 0xFFFFFFFF);
mDeviceContext->RSSetState(NULL);