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/
--- ../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