[Bug 41930] Civilization III Complete shows black terrain (Wine compiled with OSMesa support)
WineHQ Bugzilla
wine-bugs at winehq.org
Sat Feb 15 15:30:57 CST 2020
https://bugs.winehq.org/show_bug.cgi?id=41930
--- Comment #28 from Bryan Varner <bryan at varnernet.com> ---
So I've determined that the type paramater to pOSMesaMakeCurrent is correct for
both MESA and for the intended use-case... I think.
BUT.
If you force pOSMesaMakeCurrent to fail, due issuing the wrong type (BYTE for a
5_6_5 buffer), then the game appears to work.
HOWEVER.
The code-paths executed by the game become very different.
With the osmesa bits not returning errors, the game normally calls:
wglCreateContext
wglMakeCurrent(to activate)
... draw things ...
wglMakeCurrent(to deactivate)
wglDeleteContext
In a pretty loop, but the backgrounds fail to work as intended at some point --
(one of the createContexts contains a deviation in the dib width / height, and
that's when things go awry)
If you make the osmesa bits throw errors in OSMesaMakeCurrent, then the game
only ever calls
wglMakeCurrent over and over, to try and activate a context.
It never calls it with null parameters to unset the active context.
it never deletes contexts.
Strange.
--
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