Porting DirectX applications using Wine API

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
fernandocarvalho
Level 4
Level 4
Posts: 102
Joined: Sun Oct 11, 2009 7:03 am

Porting DirectX applications using Wine API

Post by fernandocarvalho »

:idea: :idea: :idea: :idea: :idea: :idea:
Is there any way to take advantage from Wine API to port DirectX applications to other platforms?
If not, I think that a way to rise the interest of developers in using Wine to port their DirectX applications would be creating a LGPL framework that could allow people reuse their code in new platforms that do not support DirectX, like the iOS, Android and others.
Do someone knows anything about how much work would take to get Wine's DirectX translation to OpenGL to create such a framework?
This could even attract some new capable developers to contribute to Wine's development. :idea:
oiaohm
Level 8
Level 8
Posts: 1020
Joined: Fri Feb 29, 2008 2:54 am

Post by oiaohm »

Really Direct X and Windows API are very hard to split. Lot of structs inside Direct X are build on the presume that Windows API will be under it or used with it.

Now of someone wants to attempt an android or iOS version not like we are going to say no. Also remember you are going to take a performance hit.

Really if the idea is to go cross platform having a opengl engine would have been a wise move.

Basically its port wine and use application inside wine in most cases. Or go to the effort of porting the application proper.
vitamin
Moderator
Moderator
Posts: 6605
Joined: Sat Feb 23, 2008 2:29 pm

Re: Porting DirectX applications using Wine API

Post by vitamin »

fernandocarvalho wrote:Is there any way to take advantage from Wine API to port DirectX applications to other platforms?
Wine's wined3 can already be used standalone on Windows to "translate" D3D into OpenGL. However this won't work of course without the rest of the Win32 API functions. This is for runtime "conversion".

For compile time conversion - you can't use Wine without major code changes which are not trivial. If anyone wants to have a cross-platform 3D app, they should be using OpenGL in the first place.
Locked