[D3D 97] Some misc fixes...
Lionel Ulmer
lionel.ulmer at free.fr
Thu Mar 6 15:48:17 CST 2003
Hi all,
Some tree clean-up before my vacations (sometimes it helps reading the Red
Book while searching why fogging did not work :-) ).
Changelog:
- some Caps clean-up when no OpenGL compiled in
- fix some fonts displaying problems
--
Lionel Ulmer - http://www.bbrox.org/
-------------- next part --------------
--- ../wine_base/dlls/ddraw/d3ddevice/mesa.c Wed Feb 12 23:00:36 2003
+++ dlls/ddraw/d3ddevice/mesa.c Sun Feb 23 20:58:18 2003
@@ -2069,6 +2042,15 @@
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
+ /* See the OpenGL Red Book for an explanation of the following translation (in the OpenGL
+ Correctness Tips section).
+
+ Basically, from what I understood, if the game does not filter the font texture,
+ as the 'real' pixel will lie at the middle of the two texels, OpenGL may choose the wrong
+ one and we will have strange artifacts (as the rounding and stuff may give different results
+ for different pixels, ie sometimes take the left pixel, sometimes the right).
+ */
+ glTranslatef(0.375, 0.375, 0);
glMatrixMode(GL_PROJECTION);
glLoadMatrixf(trans_mat);
}
--- ../wine_base/dlls/ddraw/ddraw/user.c Thu Jan 30 22:07:23 2003
+++ dlls/ddraw/ddraw/user.c Thu Feb 20 22:53:54 2003
@@ -172,7 +174,10 @@
| DDFXCAPS_BLTSHRINKY | DDFXCAPS_BLTSHRINKXN \
| DDFXCAPS_BLTSTRETCHX | DDFXCAPS_BLTSTRETCHXN \
| DDFXCAPS_BLTSTRETCHY | DDFXCAPS_BLTSTRETCHYN)
- This->caps.dwCaps |= DDCAPS_GDI | DDCAPS_PALETTE | BLIT_CAPS /* Hack for D3D code */ | DDCAPS_3D;
+ This->caps.dwCaps |= DDCAPS_GDI | DDCAPS_PALETTE | BLIT_CAPS
+#ifdef HAVE_OPENGL
+ /* Hack for D3D code */ | DDCAPS_3D;
+#endif /* HAVE_OPENGL */
This->caps.dwCaps2 |= DDCAPS2_CERTIFIED | DDCAPS2_NOPAGELOCKREQUIRED |
DDCAPS2_PRIMARYGAMMA | DDCAPS2_WIDESURFACES;
This->caps.dwCKeyCaps |= CKEY_CAPS;
@@ -193,8 +198,12 @@
DDSCAPS_FLIP | DDSCAPS_FRONTBUFFER |
DDSCAPS_OFFSCREENPLAIN | DDSCAPS_PALETTE |
DDSCAPS_PRIMARYSURFACE | DDSCAPS_SYSTEMMEMORY |
- DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE | /* Hacks for D3D code */
- DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER;
+ DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE
+#ifdef HAVE_OPENGL
+ /* Hacks for D3D code */
+ | DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER;
+#endif /* HAVE_OPENGL */
+
This->caps.ddsOldCaps.dwCaps = This->caps.ddsCaps.dwCaps;
#undef BLIT_CAPS
#undef CKEY_CAPS
More information about the wine-patches
mailing list