[D3D 60] Fix culling

Lionel Ulmer lionel.ulmer at free.fr
Sat Dec 28 17:12:13 CST 2002


Changelog:
 - removed some useless WARNs
 - fixed backface culling and material settings

-- 
		 Lionel Ulmer - http://www.bbrox.org/
-------------- next part --------------
--- /home/ulmer/Wine/wine_base//dlls/ddraw/d3ddevice/mesa.c	2002-12-28 19:48:18.000000000 +0100
+++ /home/ulmer/Wine/wine_work//dlls/ddraw/d3ddevice/mesa.c	2002-12-28 19:52:39.000000000 +0100
@@ -1478,19 +1478,19 @@
     
     This->current_material = *lpMat;
 
-    glMaterialfv(GL_FRONT,
+    glMaterialfv(GL_FRONT_AND_BACK,
 		 GL_DIFFUSE,
 		 (float *) &(This->current_material.u.diffuse));
-    glMaterialfv(GL_FRONT,
+    glMaterialfv(GL_FRONT_AND_BACK,
 		 GL_AMBIENT,
 		 (float *) &(This->current_material.u1.ambient));
-    glMaterialfv(GL_FRONT,
+    glMaterialfv(GL_FRONT_AND_BACK,
 		 GL_SPECULAR,
 		 (float *) &(This->current_material.u2.specular));
-    glMaterialfv(GL_FRONT,
+    glMaterialfv(GL_FRONT_AND_BACK,
 		 GL_EMISSION,
 		 (float *) &(This->current_material.u3.emissive));
-    glMaterialf(GL_FRONT,
+    glMaterialf(GL_FRONT_AND_BACK,
 		GL_SHININESS,
 		This->current_material.u4.power); /* Not sure about this... */
 
--- /home/ulmer/Wine/wine_base//dlls/ddraw/d3dmaterial.c	2002-12-22 12:06:18.000000000 +0100
+++ /home/ulmer/Wine/wine_work//dlls/ddraw/d3dmaterial.c	2002-12-28 19:52:18.000000000 +0100
@@ -290,19 +290,19 @@
 
   /* Set the current Material */
   _dump_colorvalue("Diffuse", This->mat.u.diffuse);
-  glMaterialfv(GL_FRONT,
+  glMaterialfv(GL_FRONT_AND_BACK,
 	       GL_DIFFUSE,
 	       (float *) &(This->mat.u.diffuse));
   _dump_colorvalue("Ambient", This->mat.u1.ambient);
-  glMaterialfv(GL_FRONT,
+  glMaterialfv(GL_FRONT_AND_BACK,
 	       GL_AMBIENT,
 	       (float *) &(This->mat.u1.ambient));
   _dump_colorvalue("Specular", This->mat.u2.specular);
-  glMaterialfv(GL_FRONT,
+  glMaterialfv(GL_FRONT_AND_BACK,
 	       GL_SPECULAR,
 	       (float *) &(This->mat.u2.specular));
   _dump_colorvalue("Emissive", This->mat.u3.emissive);
-  glMaterialfv(GL_FRONT,
+  glMaterialfv(GL_FRONT_AND_BACK,
 	       GL_EMISSION,
 	       (float *) &(This->mat.u3.emissive));
 
--- /home/ulmer/Wine/wine_base//dlls/ddraw/mesa.c	2002-12-28 19:48:18.000000000 +0100
+++ /home/ulmer/Wine/wine_work//dlls/ddraw/mesa.c	2002-12-28 19:53:06.000000000 +0100
@@ -312,12 +312,12 @@
 			 /* Not sure about these... The DirectX doc is, well, pretty unclear :-) */
 		    case D3DCULL_CW:
 			 glEnable(GL_CULL_FACE);
-			 glFrontFace(GL_CW);
+			 glFrontFace(GL_CCW);
 			 glCullFace(GL_BACK);
 			 break;
 		    case D3DCULL_CCW:
 			 glEnable(GL_CULL_FACE);
-			 glFrontFace(GL_CCW);
+			 glFrontFace(GL_CW);
 			 glCullFace(GL_BACK);
 			 break;
 		    default:
--- /home/ulmer/Wine/wine_base//dlls/ddraw/d3dvertexbuffer.c	2002-12-27 10:30:23.000000000 +0100
+++ /home/ulmer/Wine/wine_work//dlls/ddraw/d3dvertexbuffer.c	2002-12-28 19:48:50.000000000 +0100
@@ -109,7 +109,8 @@
 Main_IDirect3DVertexBufferImpl_7_1T_Unlock(LPDIRECT3DVERTEXBUFFER7 iface)
 {
     ICOM_THIS_FROM(IDirect3DVertexBufferImpl, IDirect3DVertexBuffer7, iface);
-    FIXME("(%p/%p)->(): stub!\n", This, iface);
+    TRACE("(%p/%p)->()\n", This, iface);
+    /* Nothing to do here for now. Maybe some optimizations if ever we want to do some :-) */
     return DD_OK;
 }
 


More information about the wine-patches mailing list