[PATCH 2/2] ddraw: Fix double to float conversion warnings
Stefan Dösinger
stefan at codeweavers.com
Thu Aug 1 05:25:56 CDT 2013
---
dlls/ddraw/device.c | 2 +-
dlls/ddraw/executebuffer.c | 16 ++++++++--------
dlls/ddraw/viewport.c | 8 ++++----
3 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index 09880dd..ed5dde6 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -4391,7 +4391,7 @@ static DWORD in_plane(UINT plane, D3DVECTOR normal, D3DVALUE origin_plane, D3DVE
{
float distance, norm;
- norm = sqrt( normal.u1.x * normal.u1.x + normal.u2.y * normal.u2.y + normal.u3.z * normal.u3.z );
+ norm = sqrtf( normal.u1.x * normal.u1.x + normal.u2.y * normal.u2.y + normal.u3.z * normal.u3.z );
distance = ( origin_plane + normal.u1.x * center.u1.x + normal.u2.y * center.u2.y + normal.u3.z * center.u3.z ) / norm;
if ( fabs( distance ) < radius ) return D3DSTATUS_CLIPUNIONLEFT << plane;
diff --git a/dlls/ddraw/executebuffer.c b/dlls/ddraw/executebuffer.c
index 2925cfa..5c12272 100644
--- a/dlls/ddraw/executebuffer.c
+++ b/dlls/ddraw/executebuffer.c
@@ -382,10 +382,10 @@ HRESULT d3d_execute_buffer_execute(struct d3d_execute_buffer *buffer,
dst->u8.tv = src->u8.tv;
/* Now, the matrix multiplication */
- dst->u1.sx = (src->u1.x * mat._11) + (src->u2.y * mat._21) + (src->u3.z * mat._31) + (1.0 * mat._41);
- dst->u2.sy = (src->u1.x * mat._12) + (src->u2.y * mat._22) + (src->u3.z * mat._32) + (1.0 * mat._42);
- dst->u3.sz = (src->u1.x * mat._13) + (src->u2.y * mat._23) + (src->u3.z * mat._33) + (1.0 * mat._43);
- dst->u4.rhw = (src->u1.x * mat._14) + (src->u2.y * mat._24) + (src->u3.z * mat._34) + (1.0 * mat._44);
+ dst->u1.sx = (src->u1.x * mat._11) + (src->u2.y * mat._21) + (src->u3.z * mat._31) + (1.0f * mat._41);
+ dst->u2.sy = (src->u1.x * mat._12) + (src->u2.y * mat._22) + (src->u3.z * mat._32) + (1.0f * mat._42);
+ dst->u3.sz = (src->u1.x * mat._13) + (src->u2.y * mat._23) + (src->u3.z * mat._33) + (1.0f * mat._43);
+ dst->u4.rhw = (src->u1.x * mat._14) + (src->u2.y * mat._24) + (src->u3.z * mat._34) + (1.0f * mat._44);
dst->u1.sx = dst->u1.sx / dst->u4.rhw * Viewport->dvScaleX
+ Viewport->dwX + Viewport->dwWidth / 2;
@@ -425,10 +425,10 @@ HRESULT d3d_execute_buffer_execute(struct d3d_execute_buffer *buffer,
dst->u8.tv = src->u7.tv;
/* Now, the matrix multiplication */
- dst->u1.sx = (src->u1.x * mat._11) + (src->u2.y * mat._21) + (src->u3.z * mat._31) + (1.0 * mat._41);
- dst->u2.sy = (src->u1.x * mat._12) + (src->u2.y * mat._22) + (src->u3.z * mat._32) + (1.0 * mat._42);
- dst->u3.sz = (src->u1.x * mat._13) + (src->u2.y * mat._23) + (src->u3.z * mat._33) + (1.0 * mat._43);
- dst->u4.rhw = (src->u1.x * mat._14) + (src->u2.y * mat._24) + (src->u3.z * mat._34) + (1.0 * mat._44);
+ dst->u1.sx = (src->u1.x * mat._11) + (src->u2.y * mat._21) + (src->u3.z * mat._31) + (1.0f * mat._41);
+ dst->u2.sy = (src->u1.x * mat._12) + (src->u2.y * mat._22) + (src->u3.z * mat._32) + (1.0f * mat._42);
+ dst->u3.sz = (src->u1.x * mat._13) + (src->u2.y * mat._23) + (src->u3.z * mat._33) + (1.0f * mat._43);
+ dst->u4.rhw = (src->u1.x * mat._14) + (src->u2.y * mat._24) + (src->u3.z * mat._34) + (1.0f * mat._44);
dst->u1.sx = dst->u1.sx / dst->u4.rhw * Viewport->dvScaleX
+ Viewport->dwX + Viewport->dwWidth / 2;
diff --git a/dlls/ddraw/viewport.c b/dlls/ddraw/viewport.c
index f9eddda..d74c330 100644
--- a/dlls/ddraw/viewport.c
+++ b/dlls/ddraw/viewport.c
@@ -428,10 +428,10 @@ static HRESULT WINAPI d3d_viewport_TransformVertices(IDirect3DViewport3 *iface,
outH = lpData->lpHOut;
for(i = 0; i < dwVertexCount; i++)
{
- x = (in[0] * mat._11) + (in[1] * mat._21) + (in[2] * mat._31) + (1.0 * mat._41);
- y = (in[0] * mat._12) + (in[1] * mat._22) + (in[2] * mat._32) + (1.0 * mat._42);
- z = (in[0] * mat._13) + (in[1] * mat._23) + (in[2] * mat._33) + (1.0 * mat._43);
- w = (in[0] * mat._14) + (in[1] * mat._24) + (in[2] * mat._34) + (1.0 * mat._44);
+ x = (in[0] * mat._11) + (in[1] * mat._21) + (in[2] * mat._31) + (1.0f * mat._41);
+ y = (in[0] * mat._12) + (in[1] * mat._22) + (in[2] * mat._32) + (1.0f * mat._42);
+ z = (in[0] * mat._13) + (in[1] * mat._23) + (in[2] * mat._33) + (1.0f * mat._43);
+ w = (in[0] * mat._14) + (in[1] * mat._24) + (in[2] * mat._34) + (1.0f * mat._44);
if(dwFlags & D3DTRANSFORM_CLIPPED)
{
--
1.8.1.5
More information about the wine-patches
mailing list