Commit 68c3a284 authored by Lionel Ulmer's avatar Lionel Ulmer Committed by Alexandre Julliard

- some Caps clean-up when no OpenGL compiled in

- fix some fonts displaying problems
parent f7128016
...@@ -2069,6 +2069,15 @@ d3ddevice_set_ortho(IDirect3DDeviceImpl *This) ...@@ -2069,6 +2069,15 @@ d3ddevice_set_ortho(IDirect3DDeviceImpl *This)
glMatrixMode(GL_MODELVIEW); glMatrixMode(GL_MODELVIEW);
glLoadIdentity(); 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); glMatrixMode(GL_PROJECTION);
glLoadMatrixf(trans_mat); glLoadMatrixf(trans_mat);
} }
......
...@@ -172,7 +172,11 @@ HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex) ...@@ -172,7 +172,11 @@ HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex)
| DDFXCAPS_BLTSHRINKY | DDFXCAPS_BLTSHRINKXN \ | DDFXCAPS_BLTSHRINKY | DDFXCAPS_BLTSHRINKXN \
| DDFXCAPS_BLTSTRETCHX | DDFXCAPS_BLTSTRETCHXN \ | DDFXCAPS_BLTSTRETCHX | DDFXCAPS_BLTSTRETCHXN \
| DDFXCAPS_BLTSTRETCHY | DDFXCAPS_BLTSTRETCHYN) | 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 */
This->caps.dwCaps |= DDCAPS_3D;
#endif /* HAVE_OPENGL */
This->caps.dwCaps2 |= DDCAPS2_CERTIFIED | DDCAPS2_NOPAGELOCKREQUIRED | This->caps.dwCaps2 |= DDCAPS2_CERTIFIED | DDCAPS2_NOPAGELOCKREQUIRED |
DDCAPS2_PRIMARYGAMMA | DDCAPS2_WIDESURFACES; DDCAPS2_PRIMARYGAMMA | DDCAPS2_WIDESURFACES;
This->caps.dwCKeyCaps |= CKEY_CAPS; This->caps.dwCKeyCaps |= CKEY_CAPS;
...@@ -193,8 +197,12 @@ HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex) ...@@ -193,8 +197,12 @@ HRESULT User_DirectDraw_Construct(IDirectDrawImpl *This, BOOL ex)
DDSCAPS_FLIP | DDSCAPS_FRONTBUFFER | DDSCAPS_FLIP | DDSCAPS_FRONTBUFFER |
DDSCAPS_OFFSCREENPLAIN | DDSCAPS_PALETTE | DDSCAPS_OFFSCREENPLAIN | DDSCAPS_PALETTE |
DDSCAPS_PRIMARYSURFACE | DDSCAPS_SYSTEMMEMORY | DDSCAPS_PRIMARYSURFACE | DDSCAPS_SYSTEMMEMORY |
DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE | /* Hacks for D3D code */ DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE;
DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER; #ifdef HAVE_OPENGL
/* Hacks for D3D code */
This->caps.ddsCaps.dwCaps |= DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER;
#endif /* HAVE_OPENGL */
This->caps.ddsOldCaps.dwCaps = This->caps.ddsCaps.dwCaps; This->caps.ddsOldCaps.dwCaps = This->caps.ddsCaps.dwCaps;
#undef BLIT_CAPS #undef BLIT_CAPS
#undef CKEY_CAPS #undef CKEY_CAPS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment