Stefan Dösinger : wined3d: rhw vertex fixup.

Alexandre Julliard julliard at wine.codeweavers.com
Tue May 9 14:15:37 CDT 2006


Module: wine
Branch: refs/heads/master
Commit: 10ff0d8184cef819d744242f172ea4fe74a328eb
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=10ff0d8184cef819d744242f172ea4fe74a328eb

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Tue May  9 18:16:13 2006 +0200

wined3d: rhw vertex fixup.

Change the rhw=0 range to ]1e-8,1e-8[ and move the value to a constant
in wined3d_types.h

---

 dlls/wined3d/drawprim.c        |    2 +-
 dlls/wined3d/wined3d_private.h |    2 ++
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index e4aa8f2..7f8be92 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -1529,7 +1529,7 @@ static void drawStridedSlow(IWineD3DDevi
 
         /* Position -------------------------------- */
         if (sd->u.s.position.lpData != NULL) {
-            if (1.0f == rhw || ((rhw < 0.0001f) && (rhw > -0.0001f))) {
+            if (1.0f == rhw || ((rhw < eps) && (rhw > -eps))) {
                 VTRACE(("Vertex: glVertex:x,y,z=%f,%f,%f\n", x,y,z));
                 glVertex3f(x, y, z);
             } else {
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 238d5ac..980ad32 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -378,6 +378,8 @@ void drawPrimitive(IWineD3DDevice *iface
                     int   minIndex,
                     WineDirect3DVertexStridedData *DrawPrimStrideData);
 
+#define eps 1e-8
+
 /* Routine to fill gl caps for swapchains and IWineD3D */
 BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info,
                              Display* display);




More information about the wine-cvs mailing list