Hello
I am trying to get an application I have written working under Wine. My application uses Direct3D v.9 which is causing a problem. I am using the latest CVS version of Wine under Mandriva Linux 10.2.
The problem I have is that when I try to create the 3D device using CreateDevice, it fails and I get the following output from Wine debugging:
fixme:d3d:IWineD3DImpl_GetDeviceCaps Caps support for directx9 is nonexistent at the moment! fixme:d3d:IWineD3DImpl_CheckDeviceMultiSampleType Quality levels unsupported at present trace:d3d:IWineD3DImpl_CreateDevice Created WineD3DDevice object @ 0x79b7ec78 trace:d3d:IWineD3DImpl_AddRef (0x7bcb1890) : AddRef increasing from 1 trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890)->(Adptr:0, DevType: 1, FocusHwnd: 0x50060, BehFlags: 42, PresParms: 0x7baeb0ec, RetDevInt: 0x78d56ea8) trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890)->(DepthStencil:(80,WINED3DFMT_D16), BackBufferFormat:(23,WINED3DFMT_R5G6B5)) trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890) : Creating stateblock trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890) : Created stateblock (0x79bbf6a0) trace:d3d:IWineD3DStateBlockImpl_AddRef (0x79bbf6a0) : AddRef increasing from 1 trace:d3d:IWineD3DImpl_CreateDevice Creating implicit swapchain trace:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain (0x79b7ec78) : Created Aditional Swap Chain trace:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain Using a display of 0x7c017628 0x4284 warn:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain Failed to get a valid XVisuial ID for the window 0x50060 fixme:d3d9:IDirect3DDevice9Impl_CreateAdditionalSwapChain (0x78d56ea0) call to IWineD3DDevice_CreateAdditionalSwapChainfailed warn:d3d:IWineD3DImpl_CreateDevice Failed to create implicit swapchain trace:d3d:IWineD3DStateBlockImpl_Release (0x79bbf6a0) : Releasing from 2 trace:d3d:IWineD3DStateBlockImpl_Release (0x79bbf6a0) : Releasing from 1 fixme:d3d:IWineD3DStateBlockImpl_Release Releasing primary stateblock
I have located the source of the error in device.c which seems to be something to do with it not having a valid X11 window. However, at this point my lack of Wine knowledge prevents me from getting any further. Has anyone any idea what might be causing this problem and what I can do to fix it?
Any help much appreciated.
Mark
See below
-----Ursprüngliche Nachricht----- Von: wine-devel-bounces@winehq.org [mailto:wine-devel-bounces@winehq.org] Im Auftrag von Mark Hatsell Gesendet: Mittwoch, 28. September 2005 18:36 An: wine-devel@winehq.com Betreff: Problem with D3D9 CreateDevice
I am trying to get an application I have written working under Wine. My application uses Direct3D v.9 which is causing a problem. I am using the latest CVS version of Wine under Mandriva Linux 10.2.
Could you tell us what app/game you are trying to run. (trail/demo available?)
I have a game (Eve Online) that fails while detecting the direct modes. http://bugs.winehq.org/show_bug.cgi?id=3157
I have located the source of the error in device.c which seems to be something to do with it not having a valid X11 window. However, at this point my lack of Wine knowledge prevents me from getting any further. Has anyone any idea what might be causing this problem and what I can do to fix it?
Did you try the directx 2005-06-13 patch with the cvs from that day? Eve basicly stops even before showing the login screen in current CVS but shows the login screen with the old cvs + that patch.
Any help much appreciated.
Mark
Hope it helps a bit
Karsten
--- Karsten Elfenbein elfe-sysmail@elfe.mine.nu wrote:
I have a game (Eve Online) that fails while detecting the direct modes. http://bugs.winehq.org/show_bug.cgi?id=3157
I have located the source of the error in device.c which seems to be something to do with it not having a valid X11 window. However, at this point my lack of Wine knowledge prevents me from getting any further. Has anyone any idea what might be causing this problem and what I can do to fix it?
Did you try the directx 2005-06-13 patch with the cvs from that day? Eve basicly stops even before showing the login screen in current CVS but shows the login screen with the old cvs + that patch.
Almost everything is in cvs now so it shouldn't make too much difference, I'm going to post a patch in a few minutes hat works around the device texture format compatibility problems as a stop-gap until format detection is reworked and working properly.
Oliver.
Any help much appreciated.
Mark
Hope it helps a bit
Karsten
___________________________________________________________ How much free photo storage do you get? Store your holiday snaps for FREE with Yahoo! Photos http://uk.photos.yahoo.com
"Karsten Elfenbein" elfe-sysmail@elfe.mine.nu wrote in message news:004c01c5c453$02755220$6e080a0a@elfe1...
Could you tell us what app/game you are trying to run. (trail/demo available?)
I have a game (Eve Online) that fails while detecting the direct modes. http://bugs.winehq.org/show_bug.cgi?id=3157
It is an app I have written myself for plotting 2D/3D graphs etc.
Mark
--- Mark Hatsell mark.hatsell@btinternet.com wrote:
Hello
I am trying to get an application I have written working under Wine. My application uses Direct3D v.9 which is causing a problem. I am using the latest CVS version of Wine under Mandriva Linux 10.2.
I believe all top level windows should have a valid visual ID.
Can you tell me what your passing in as the creation parameters, if your creating a window and using it's HWND when creating a device or expecting DirectX 9 to create the device for you, and if your application is MDI or not.
Thanks, Oliver
The problem I have is that when I try to create the 3D device using CreateDevice, it fails and I get the following output from Wine debugging:
fixme:d3d:IWineD3DImpl_GetDeviceCaps Caps support for directx9 is nonexistent at the moment! fixme:d3d:IWineD3DImpl_CheckDeviceMultiSampleType Quality levels unsupported at present trace:d3d:IWineD3DImpl_CreateDevice Created WineD3DDevice object @ 0x79b7ec78 trace:d3d:IWineD3DImpl_AddRef (0x7bcb1890) : AddRef increasing from 1 trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890)->(Adptr:0, DevType: 1, FocusHwnd: 0x50060, BehFlags: 42, PresParms: 0x7baeb0ec, RetDevInt: 0x78d56ea8) trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890)->(DepthStencil:(80,WINED3DFMT_D16), BackBufferFormat:(23,WINED3DFMT_R5G6B5)) trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890) : Creating stateblock trace:d3d:IWineD3DImpl_CreateDevice (0x7bcb1890) : Created stateblock (0x79bbf6a0) trace:d3d:IWineD3DStateBlockImpl_AddRef (0x79bbf6a0) : AddRef increasing from 1 trace:d3d:IWineD3DImpl_CreateDevice Creating implicit swapchain trace:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain (0x79b7ec78) : Created Aditional Swap Chain trace:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain Using a display of 0x7c017628 0x4284 warn:d3d:IWineD3DDeviceImpl_CreateAdditionalSwapChain Failed to get a valid XVisuial ID for the window 0x50060 fixme:d3d9:IDirect3DDevice9Impl_CreateAdditionalSwapChain (0x78d56ea0) call to IWineD3DDevice_CreateAdditionalSwapChainfailed warn:d3d:IWineD3DImpl_CreateDevice Failed to create implicit swapchain trace:d3d:IWineD3DStateBlockImpl_Release (0x79bbf6a0) : Releasing from 2 trace:d3d:IWineD3DStateBlockImpl_Release (0x79bbf6a0) : Releasing from 1 fixme:d3d:IWineD3DStateBlockImpl_Release Releasing primary stateblock
I have located the source of the error in device.c which seems to be something to do with it not having a valid X11 window. However, at this point my lack of Wine knowledge prevents me from getting any further. Has anyone any idea what might be causing this problem and what I can do to fix it?
Any help much appreciated.
Mark
___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
"Oliver Stieber" oliver_stieber@yahoo.co.uk wrote in message news:20050928194419.37697.qmail@web26204.mail.ukl.yahoo.com...
I believe all top level windows should have a valid visual ID.
Can you tell me what your passing in as the creation parameters, if your creating a window and using it's HWND when creating a device or expecting DirectX 9 to create the device for you, and if your application is MDI or not.
The window is created prior to the CreateDevice call but is not yet shown. It has the following Window Styles and Extended Styles:
WS_CAPTION WS_CHILDWINDOW WS_VISIBLE WS_CLIPSIBLINGS WS_CLIPCHILDREN WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX
WS_EX_LEFT WS_EX_LTRREADING WS_EX_RIGHTSCOLLBAR WS_EX_MDICHILD WS_EX_WINDOWEDGE
My application is an MDI application and the Direct3D window is an MDI child. I have found that the mfctex sample in the DirectX SDK also stops with this error.
Let me know if you need any further info.
Thanks Mark
--- Mark Hatsell mark.hatsell@btinternet.com wrote:
"Oliver Stieber" oliver_stieber@yahoo.co.uk wrote in message news:20050928194419.37697.qmail@web26204.mail.ukl.yahoo.com...
I believe all top level windows should have a valid visual ID.
My application is an MDI application and the Direct3D window is an MDI child. I have found that the mfctex sample in the DirectX SDK also stops with this error.
MDI was updated a few months ago, one of the results is that MDI no longer works for Direct3D applications. Fixing MDI for Direct3D is on my TODO list.
Oliver.
Let me know if you need any further info.
Thanks Mark
___________________________________________________________ How much free photo storage do you get? Store your holiday snaps for FREE with Yahoo! Photos http://uk.photos.yahoo.com
"Oliver Stieber" oliver_stieber@yahoo.co.uk wrote in message news:20050928232524.85003.qmail@web26205.mail.ukl.yahoo.com...
MDI was updated a few months ago, one of the results is that MDI no longer works for Direct3D applications. Fixing MDI for Direct3D is on my TODO list.
I think the error occurs when Direct3D is used in any child (non-top level) window, not just MDI child windows. I say this since the mfctex sample is not an MDI application and the same problem exists. However, the Direct3D window is a child of the main application window.
I'll keep my eyes peeled for a patch.
Thanks Mark