[Bug 34398] Daedalic games don't display anything with winemac.drv

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Oct 8 19:46:43 CDT 2013


http://bugs.winehq.org/show_bug.cgi?id=34398

--- Comment #8 from Ken Thomases <ken at codeweavers.com> 2013-10-08 19:46:43 CDT ---
Thanks for looking into this.  I appreciate the additional eyes.

That spec for glxChooseFBConfig() is interesting and explains the X11 driver's
behavior.  The question is, how is wglChoosePixelFormatARB() supposed to
behave.  Does it have a similar documented bias toward deeper depth buffers. 
(That bias is a bit weird, though.  Why support multiple depth buffer sizes for
otherwise-identical pixel formats?  Why not just have 0 and max if the
intermediate ones aren't going to be chosen?)

The spec for wglChoosePixelFormatARB() says that the returned pixel format's
depth buffer must equal or exceed the requested WGL_DEPTH_BITS_ARB.  Beyond
that, it says that the best pixel formats are returned earlier in the list but
that the definition of "best" is device-specific.

https://www.opengl.org/registry/specs/ARB/wgl_pixel_format.txt


Regarding the 10x10 window: I believe that that is the temporary window created
by WineD3D when it probes the GL capabilities.

http://source.winehq.org/source/dlls/wined3d/directx.c?v=wine-1.7.3#L326

The log shows another GL view being created later.  That has a more sensible
size:

0009:trace:wgl:set_win_format created GL view 0x7ba52f90 in window 0x7bd3de20
at (0,0)-(1440,887)


Another thing occurs to me.  I wonder if the games are using glu32.  Glu32 is
one of the only places (maybe the only place) left outside of winex11.drv where
Wine has a dependency on X11.  So, glu32 can work when the X11 driver is in use
but can't with the Mac driver.  Sometimes that results in crashes, but
sometimes just in failure to render.

The +glu debugging channel is mostly worthless.  I think a +module log would
show if glu32 is loaded.  A +relay log would definitely show calls into glu32,
but seems like overkill.  You could also try disabling glu32 using a DLL
override.  That would probably result in the games failing to launch with
either driver.  If you care to, you could also test with CrossOver, which has a
hack to support glu32 with the Mac driver.  (Alexandre doesn't want that hack
in Wine.  He has an idea for how to fix glu32 properly, but not the time to do
it.)

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list