implements both d3d9 and d3d8 (to use d3d8 copy/rename/link d3d9.dll to d3d8.dll)
only 32-bit version.
at least opengl 3.3 is required

the same dll works in both wine/linux AND native windows.
to use, just copy d3d9.dll to the directory where is the game exe.
under wine copy there the d3d-exec file too and make it executable (change file flags),
and tell wine to use the "native" d3d9.dll instead of it's built-in. I do that with the wine-cfg tool.

works without any problems with all the games i have tested (and debugged). they are:
guild wars (1), world of warcraft, titan quest (expansion), tomb raider underworld, skyrim, league of legends.

also works fine with 3d studio max 7 (it's d3d9 output plugin). the interesting part here is the
multiple child windows/swap chains. (wine's own built-in d3d seems to have problems with drawing to multiple/child windows)

currently only d3d9/8 are implemented because:
d3d8 is almost strict subset of d3d9 and is implemented as a thin layer on top of it.
d3d10+ are different enough to require separate frontend, but thats much coding/research
for not enough motivation as their popularity is low (no game that i would care about uses d3d10+).
d3d7- are based on ddraw and i cant be bothered with that crap.

