Those of you who had been following my articles at BeNews last year, you probably remember the France-based RealTech-VR and their effort to bring a Direct3D-to-OpenGL wrapper to the BeOS. The company paused most of that effort when was clear that BeOS was stopped being developed, but after pressure from the community, they have now open sourced their D3D-2-GL implementation and work has already started to port the wrapper to MacOS and Linux in an effort to bring Direct 3D to more alternative operating systems. Today we feature a mini-interview with Stephane Denis of RealTech-VR about the implementation.
1. Which operating systems the open sourced version at Sourceforge supports as of now?
Stephane Denis: Actually, the sources are designed for Win32 but they will be compatible for Linux and MacOS soon.
The ENSEIRB (a french engineer school in Bordeaux) are currently porting it for Linux and will probably speed up a lot the developement of the interface.
2. If the wrapper only supports Windows and BeOS, how easy/difficult a port to Linux or MacOS would be?
Stephane Denis: Personally, I continue the win32 emulation/wrapper to validate the wrapper compatibility and then I will do the MacOS version. For Linux, there is already a crew on it working. For the BeOS version, well I probably adapt it later.
A test D3D-2-GL program loading under WindowsXP. Click for larger version.
3. How far down the line the wrapper is? What has to be done yet?
Stephane Denis: Actually the Direct3d 8.0 part (only immediate mode) seems to works more or less, but not sufficiently enough to support really complex programs for the moment. But I expect that more people will look on other parts too, like DirectInput and DirectSound (since they are completly separated modules).
4. How fast/slow the implementation is when compared to a "native" GL app?
Stephane Denis: The speed or efficiency of the wrapper depends mainly of the OpenGL extensions supported. Since most of the time is consumed on rendering and not on API calls, this should be as fast as the original Direct3D code.
But you know, the goal is to get the DirectX API available on non-Win32 platform in order developers be able to create or port actual Direct3D 8 code. For Win32, some video cards like 3DLabs Wildcat or professional SGI video cards do not support Direct3d or Directdraw at all, but they have an excellent Opengl implementation. So the wrapper would be especially useful for theses adapters. A solution already exists, but we want to add Direct3D8 support.
I truly hope that more developers will join this interesting project now so we get things going in a faster pace.
A Direct3D application running in GL mode with the help of the wrapper.
These were done years ago for FM radio coverage and many "more sophisticated" ham radio repeaters back in the late 80's. It's pretty cool and accurate enough. (although not very accurate inbetween distant points unless you add a topo data set to the GIS dataset.. Grass is an excellent GIS package for Linux that gives linux users the power of multi-million dollar GIS systems in their basement... and this is a great way do use that cool tool.
To avoid the new lamesness filter, I need to increase the average length of my lines... please ignore the following.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
I find it funny how legitamate karma whores have to put in "filler" text to avoid the lameness filter...
Thank you for your suggestions. I must try to get back on the right troll path. After trolling troll talk last week, I don't think too many trolls/crapflooders are very happy with me.
I have seen the light of the Taco... and it must be destroyed.
* g o a t s e x * g o a t s e x * g o a t s e x *
g g
o / \ \ / \ o
a \ a
t `. : t
s` \ s
e \ / / \\\ -- \\ : e
x \ \/ --~~ ~-- \ x
* \ \-~ ~-\ *
g \ \.--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t/\ C )/ \ (> / t
s //\ C) (> / \ s
e ( C__)\___/// _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x * Important Stuff:
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
Problems regarding accounts or comment posting should be sent to CowboyNeal.
* g o a t s e x * g o a t s e x * g o a t s e x *
g g
o / \ \ / \ o
a \ a
t `. : t
s` \ s
e \ / / \\\ -- \\ : e
x \ \/ --~~ ~-- \ x
* \ \-~ ~-\ *
g \ \.--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t/\ C )/ \ (> / t
s //\ C) (> / \ s
e ( C__)\___/// _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x * Important Stuff:
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
Problems regarding accounts or comment posting should be sent to CowboyNeal.
* g o a t s e x * g o a t s e x * g o a t s e x *
g g
o / \ \ / \ o
a \ a
t `. : t
s` \ s
e \ / / \\\ -- \\ : e
x \ \/ --~~ ~-- \ x
* \ \-~ ~-\ *
g \ \.--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t/\ C )/ \ (> / t
s //\ C) (> / \ s
e ( C__)\___/// _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x *
Important Stuff:
Please try to keep posts on topic.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
Problems regarding accounts or comment posting should be sent to CowboyNeal.
surely not...
1. Which operating systems the open sourced version at Sourceforge supports as of now?
Stephane Denis: Actually, the sources are designed for Win32 but they will be compatible for Linux and MacOS soon.
The ENSEIRB (a french engineer school in Bordeaux) are currently porting it for Linux and will probably speed up a lot the developement of the interface.
2. If the wrapper only supports Windows and BeOS, how easy/difficult a port to Linux or MacOS would be?
Stephane Denis: Personally, I continue the win32 emulation/wrapper to validate the wrapper compatibility and then I will do the MacOS version. For Linux, there is already a crew on it working. For the BeOS version, well I probably adapt it later.
A test D3D-2-GL program loading under WindowsXP. Click for larger version.
3. How far down the line the wrapper is? What has to be done yet?
Stephane Denis: Actually the Direct3d 8.0 part (only immediate mode) seems to works more or less, but not sufficiently enough to support really complex programs for the moment. But I expect that more people will look on other parts too, like DirectInput and DirectSound (since they are completly separated modules).
4. How fast/slow the implementation is when compared to a "native" GL app?
Stephane Denis: The speed or efficiency of the wrapper depends mainly of the OpenGL extensions supported. Since most of the time is consumed on rendering and not on API calls, this should be as fast as the original Direct3D code.
But you know, the goal is to get the DirectX API available on non-Win32 platform in order developers be able to create or port actual Direct3D 8 code. For Win32, some video cards like 3DLabs Wildcat or professional SGI video cards do not support Direct3d or Directdraw at all, but they have an excellent Opengl implementation. So the wrapper would be especially useful for theses adapters. A solution already exists, but we want to add Direct3D8 support.
I truly hope that more developers will join this interesting project now so we get things going in a faster pace.
A Direct3D application running in GL mode with the help of the wrapper.
Try linking next time...
Please up date your sig...
These were done years ago for FM radio coverage and many "more sophisticated" ham radio repeaters back in the late 80's. It's pretty cool and accurate enough. (although not very accurate inbetween distant points unless you add a topo data set to the GIS dataset.. Grass is an excellent GIS package for Linux that gives linux users the power of multi-million dollar GIS systems in their basement... and this is a great way do use that cool tool.
HTF did this get rated +5? just because 4 moderators were too lazy to look the information up for themselves?
To avoid the new lamesness filter, I need to increase the average length of my lines ... please ignore the following.
Try to reply to other people comments instead of starting new threads.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
Use a clear subject that describes what your message is about.
Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
I find it funny how legitamate karma whores have to put in "filler" text to avoid the lameness filter...
Lameness Filter = Lame Filter
Thank you for your suggestions. I must try to get back on the right troll path. After trolling troll talk last week, I don't think too many trolls/crapflooders are very happy with me.
I have seen the light of the Taco... and it must be destroyed.
BTW: I hate CmdrTaco...
* g o a t s e x * g o a t s e x * g o a t s e x * g g o / \ \ / \ o a \ a t `. : t s` \ s e \ / / \\\ -- \\ : e x \ \/ --~~ ~-- \ x * \ \-~ ~-\ * g \ \ .--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t /\ C )/ \ (> / t
s / /\ C) (> / \ s
e ( C__)\___/ // _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x *
Important Stuff: Please try to keep posts on topic. Try to reply to other people comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) Problems regarding accounts or comment posting should be sent to CowboyNeal.
* g o a t s e x * g o a t s e x * g o a t s e x * g g o / \ \ / \ o a \ a t `. : t s` \ s e \ / / \\\ -- \\ : e x \ \/ --~~ ~-- \ x * \ \-~ ~-\ * g \ \ .--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t /\ C )/ \ (> / t
s / /\ C) (> / \ s
e ( C__)\___/ // _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x *
Important Stuff: Please try to keep posts on topic. Try to reply to other people comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) Problems regarding accounts or comment posting should be sent to CowboyNeal.
Does anyone have a tally of how many times Stephen King died in 2001?
* g o a t s e x * g o a t s e x * g o a t s e x * g g o / \ \ / \ o a \ a t `. : t s` \ s e \ / / \\\ -- \\ : e x \ \/ --~~ ~-- \ x * \ \-~ ~-\ * g \ \ .--------.___\ g
o \ \// ((> \ o
a \ . C ) ((> / a
t /\ C )/ \ (> / t
s / /\ C) (> / \ s
e ( C__)\___/ // _/ / \ e
x \ \\// (/ x
* \ \) `---- --' *
g \ \ / / g
o / \ o
a / \ \ a
t / / \ t
s / / \/\/ s
e / e
x x
* g o a t s e x * g o a t s e x * g o a t s e x *
Important Stuff: Please try to keep posts on topic. Try to reply to other people comments instead of starting new threads. Read other people's messages before posting your own to avoid simply duplicating what has already been said. Use a clear subject that describes what your message is about. Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page) Problems regarding accounts or comment posting should be sent to CowboyNeal.
I agree with this post.