Module: wine Branch: master Commit: c315d75dab48df8bd5466c9264b5fac8a509cf4f URL: http://source.winehq.org/git/wine.git/?a=commit;h=c315d75dab48df8bd5466c9264...
Author: Roderick Colenbrander thunderbird2k@gmail.com Date: Fri May 15 00:00:49 2009 +0200
wgl: Offer PFD_GENERIC_ACCELERATED on bitmap capable formats.
Windows drivers do this as well and some apps rely on this (it might fix Sketchup but I can't reproduce the issues on this system).
---
dlls/winex11.drv/opengl.c | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c index da04e3e..ed46d69 100644 --- a/dlls/winex11.drv/opengl.c +++ b/dlls/winex11.drv/opengl.c @@ -944,7 +944,7 @@ static WineGLPixelFormat *get_formats(Display *display, int *size_ret, int *onsc list[size].fmt_id = fmt_id; list[size].render_type = get_render_type_from_fbconfig(display, cfgs[i]); list[size].offscreenOnly = FALSE; - list[size].dwFlags = PFD_DRAW_TO_BITMAP | PFD_SUPPORT_GDI; + list[size].dwFlags = PFD_DRAW_TO_BITMAP | PFD_SUPPORT_GDI | PFD_GENERIC_ACCELERATED; size++; onscreen_size++; } @@ -1413,9 +1413,12 @@ int CDECL X11DRV_DescribePixelFormat(X11DRV_PDEVICE *physDev, * offered the GDI bit either. */ ppfd->dwFlags |= fmt->dwFlags & (PFD_DRAW_TO_BITMAP | PFD_SUPPORT_GDI);
- pglXGetFBConfigAttrib(gdi_display, fmt->fbconfig, GLX_CONFIG_CAVEAT, &value); - if(value == GLX_SLOW_CONFIG) - ppfd->dwFlags |= PFD_GENERIC_ACCELERATED; + /* PFD_GENERIC_FORMAT - gdi software rendering + * PFD_GENERIC_ACCELERATED - some parts are accelerated by a display driver (ICD or MCD) + * none set - full hardware accelerated by a ICD + * + * We only set PFD_GENERIC_ACCELERATED on bitmap formats (see get_formats) as that's what ATI and Nvidia Windows drivers do */ + ppfd->dwFlags |= fmt->dwFlags & PFD_GENERIC_ACCELERATED;
pglXGetFBConfigAttrib(gdi_display, fmt->fbconfig, GLX_DOUBLEBUFFER, &value); if (value) {