[Bug 24592] Utopia City fails to start, reporting 'Game initialization failed due to following: services failed to initialize' (D3D device creation on desktop window)
wine-bugs at winehq.org
wine-bugs at winehq.org
Sat Jun 20 08:13:59 CDT 2015
https://bugs.winehq.org/show_bug.cgi?id=24592
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
URL|http://www.gamershell.com/d |http://download.fileplanet.
|ownload_13008.shtml |com/ftp1/032006/utopiacityd
| |emo2006.zip
CC| |focht at gmx.net
Component|msvcp |directx-d3d
Resolution|--- |DUPLICATE
Summary|Utopia City crashes on |Utopia City fails to start,
|startup |reporting 'Game
| |initialization failed due
| |to following: services
| |failed to initialize' (D3D
| |device creation on desktop
| |window)
--- Comment #10 from Anastasius Focht <focht at gmx.net> ---
Hello folks,
confirming.
Comment #9 refers to a Wine-Staging ticket but that is a secondary issue.
Staging has a lot of patches applied by default that fix/hide various issues
still present in plain Wine.
App log file:
--- snip ---
...
GIL: ================= Device Check Passed =================
...init GILHolder: OK
...init RenderController: OK
...init MetaSoup: OK
...init RExtensionCache: OK
...init SmdMeshManager: OK
...init GUIManager: OK
...init AssetManager: OK
...init MeshManager: OK
...init FontManager: OK
Error! GIL: Exception: GIL: Failed to enumerate video modes!
InterfaceHolder<class r::RendererImpl> deinitialization:
...release FontManager: done
...release MeshManager: done
...release AssetManager: done
...release GUIManager: done
...release SmdMeshManager: done
...release RExtensionCache: done
...release MetaSoup: done
...release RenderController: done
...release GILHolder: done
...done
Error! Failed to obtain Renderer interface.
Error!
...init Renderer: Failed!
...release Geometry
--- snip ---
The real problem is the game creates a D3D device using the desktop window and
tries to set pixel format on it - which obviously fails.
Use this patch to work around the D3D failure:
https://bugs.winehq.org/attachment.cgi?id=46160 ("wined3d: Use backup swapchain
DC for devices created with desktop window.")
While tracking down the issue I noticed this patch in Wine-Staging:
https://github.com/wine-compholio/wine-staging/blob/master/patches/d3d9-DesktopWindow/0001-winex11.drv-Allow-changing-the-opengl-pixel-format-o.patch
--- quote ---
Subject: winex11.drv: Allow changing the opengl pixel format on the desktop
window.
This patch is not 100% correct because the old behavior was more similar to
windows. However, Direct3D supports using the desktop window to create a
context and since Wine translates Direct3D to OpenGL, using the desktop
window will fail because of this limitation. Unless someone comes up with
a more correct solution or finds an application that breaks because of this,
it seems to be a suitable workaround as it fixes multiple applications.
--- quote ---
Although it appears to fix essentially the same problem, I suggest to look at
bug 18490 which is IMHO a better approach to this problem (disclaimer: I'm not
a D3D expert).
I'm going to resolve this as dupe of bug 18490 to avoid recycling.
Please create another bug for the MSVC++ problem.
$ sha1sum utopiacitydemo2006.zip
2d31ea856c3d932f7c37d300272e78e29c362fc3 utopiacitydemo2006.zip
$ du -sh utopiacitydemo2006.zip
240M utopiacitydemo2006.zip
$ wine --version
wine-1.7.45-146-gaf55ae1
Regards
*** This bug has been marked as a duplicate of bug 18490 ***
--
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