Small Direct3D milestone

Stefan Dösinger stefan at
Fri May 11 14:16:59 CDT 2007


With Wine 0.9.37 we've archieved something that I allow myself to call a small 
milestone - All Direct3D7 Immediate mode SDK demos successfully perform their 
intended rendering. I have some screenshots on my university junk server:

Two major problems are left though, namely windowed opengl rendering(see the 
junk where a menu bar should be) and GetDC(there should be a little bit of 
text rendered, I disabled render target locking to get proper performance).

Some demos have a few smaller problems too. The bump earth and bump waves need 
vendor specific extensions(GL_NV_texture_shader2 / GL_ATI_envmap_bumpmap) and 
the bend demo needs GL_ARB_vertex_blend which nvidia does not support. So I 
took that screenshot on my mac running linux(ati radeon X1600. The mipmap 
demo renders the mipmaped texture garbled, although this works on nvidia 
cards. The Z buffer demo says w buffers aren't supported, but the normal z 
buffer does what the w buffer is supposed to do.

What does that mean for gamers? Nothing fancy really, the features used by 
games are implemented since a long time, the ones that used to miss(fixed 
function bump mapping, vertex blending) aren't really important for games. 
Other DirectDraw features like Overlays aren't implemented either, but we are 
Direct3D 7 feature complete.

Where to go from here? I am currently fixing the DirectDraw rewrite 
regressions I can get hold of, and I am trying to make D3D thread safe 
finally. From the application point of view my focus will stay on fixing 
older apps first, which somewhat includes getting thread safety, render 
target locking and GetDC working properly. My hope is also to fix the other 
related DX7 sdk demos, like the DDraw demos(except overlays, they are highly 
tricky with the current wined3d-x11drv integration) and getting native 
d3drm.dll working.

I also want to say thanks to all the small and big helpers who help with 
technical advise, debugging and regression testing. Special thanks goes to 
Henri without whom I'd be totally lost and who has to be credited for a huge 
majority of the shader work in the last half year, and a lot of other things 

Thanks and continue the good work :-)

PS: As for the screenshots, my space on that server is limited, so they will 
be gone sooner or later. I didn't want to send huge screenshots as 
attachments, not even as jpgs.

More information about the wine-devel mailing list