https://bugs.winehq.org/show_bug.cgi?id=37259
Bug ID: 37259 Summary: Simple Direct2D application fails to work with newer d3d10_1.dll Product: Wine Version: 1.7.26 Hardware: x86 OS: Windows Status: UNCONFIRMED Severity: minor Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: svyatpro@gmail.com
BUG: When you run simple Direct2D application (application that I attached "p010.exe"), Direct2D test fails with newer d3d10_1.dll(Wine 1.7.26) and doesn't draw anything. When you paste older d3d10_1.dll(Wine 1.7.25) to \windows\system32 directory, the application p010.exe able to draw simple vectors but with error message, that function D3D10CreateStateBlock wasn't found.
Precondition: d2d1.dll, d3d10.dll, d3d10core.dll, d3d10_1.dll, dxgi.dll, wined3d.dll, libwine.dll should be compiled for Windows and pasted into \Windows\Sysem32 or to the application environment, real hardware with OpenGL support seems to be required.
Steps to repro: 1) Run p010.exe app 2) Choose Direct2D 3) Press key with two squares at the left
Expected result: Application should draw simple vectors.
https://bugs.winehq.org/show_bug.cgi?id=37259
Svyatpro svyatpro@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|minor |normal
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #1 from Svyatpro svyatpro@gmail.com --- Created attachment 49553 --> https://bugs.winehq.org/attachment.cgi?id=49553 Application
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #2 from Svyatpro svyatpro@gmail.com --- Created attachment 49554 --> https://bugs.winehq.org/attachment.cgi?id=49554 compiled d3d10;d2d dlls
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #3 from Henri Verbeet hverbeet@gmail.com --- It's probably because d3d10_1 now implements D3D10CreateStateBlock() then. My guess would be that d2d1 was falling back to the software renderer before.
While using Wine dlls on Windows like that is an interesting use of Wine, it's not something we actively support, for much that same reasons that using native Windows dlls in a Wine prefix is unsupported. The application not working / drawing incorrectly with a regular Wine setup would be a valid bug, of course.
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #4 from Svyatpro svyatpro@gmail.com --- I see the same behavior and on Linux, that seems that this bug is relevant to Linux too.
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #5 from Austin English austinenglish@gmail.com --- bug 37255 looks like it may be related
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #6 from Svyatpro svyatpro@gmail.com --- (In reply to Henri Verbeet from comment #3)
It's probably because d3d10_1 now implements D3D10CreateStateBlock() then. My guess would be that d2d1 was falling back to the software renderer before.
While using Wine dlls on Windows like that is an interesting use of Wine, it's not something we actively support, for much that same reasons that using native Windows dlls in a Wine prefix is unsupported. The application not working / drawing incorrectly with a regular Wine setup would be a valid bug, of course.
Why do you call D3D10_1 to use hardware acceleration for 2D drawing library, if you can call directly OpenGL, this may take less resources and bring better performance.
https://bugs.winehq.org/show_bug.cgi?id=37259
--- Comment #7 from Henri Verbeet hverbeet@gmail.com --- Bugzilla is perhaps not the best place for that discussion, but the short version is that Direct2D needs to interoperate with Direct3D 10/11.
https://bugs.winehq.org/show_bug.cgi?id=37259
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net, | |super_man@post.com
--- Comment #8 from super_man@post.com --- Pressing teh 2 squares gives this fixme
fixme:d2d:d2d_factory_CreateDCRenderTarget iface 0x1873b8, desc 0x33f0e0, render_target 0x5f2240 stub!
making this actualy a dupe of bug 37628 ?
https://bugs.winehq.org/show_bug.cgi?id=37259
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|UNCONFIRMED |NEW Depends on| |37628 Summary|Simple Direct2D application |Multiple Direct2D |fails to work with newer |applications need |d3d10_1.dll |ID2D1DCRenderTarget::BindDC | |implementation Ever confirmed|0 |1
--- Comment #9 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming. But please avoid Direct2D meta-bugs "make it work".
The current blocker is bug 37628 ('d2d_factory_CreateDCRenderTarget' is a stub)
I debugged this a bit further, looking for next things to be provided.
If 'ID2D1DCRenderTarget' interface is returned, the app wants to associate the render target with the window DC by calling 'ID2D1DCRenderTarget::BindDC'.
MSDN: https://msdn.microsoft.com/en-us/library/windows/desktop/dd371214%28v=vs.85%...
Refining summary to target this method and also adding dependency.
Regards
https://bugs.winehq.org/show_bug.cgi?id=37259
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|directx-d3d |d2d
https://bugs.winehq.org/show_bug.cgi?id=37259
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Fixed by SHA1| |03d301cc74a31b6f99195d4706c | |b8e4088a49ff3 Status|NEW |RESOLVED
--- Comment #10 from Nikolay Sivov bunglehead@gmail.com --- Fixed with http://source.winehq.org/git/wine.git/commit/03d301cc74a31b6f99195d4706cb8e4....
https://bugs.winehq.org/show_bug.cgi?id=37259 Bug 37259 depends on bug 37628, which changed state.
Bug 37628 Summary: KORG Legacy Collection - MS-20 v1.3.0 'Authorizer' app crashes, No Limits 2 help system does not render ('d2d_factory_CreateDCRenderTarget' is a stub) https://bugs.winehq.org/show_bug.cgi?id=37628
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
https://bugs.winehq.org/show_bug.cgi?id=37259
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.9.19.