https://bugs.winehq.org/show_bug.cgi?id=39346
--- Comment #12 from Henri Verbeet hverbeet@gmail.com --- (In reply to Anastasius Focht from comment #10)
I'm not an expert on this but for me it seems that version == 3 case is not handled here. The code uses IDirect3D2_CreateDevice for all cases != 1 which later leads to the problem that 'IDirect3DDevice3' interface can't be queried by design. It should be using 'IDirect3D3_CreateDevice' for version == 3 case.
Probably, yes. We already have some tests for GetDirect3DDevice2(), it should be straightforward enough to extend those if anyone is looking for a small patch to write.