diff --git a/DDrawCompat/Direct3d/Hooks.cpp b/DDrawCompat/Direct3d/Hooks.cpp index ff497cc..a43380e 100644 --- a/DDrawCompat/Direct3d/Hooks.cpp +++ b/DDrawCompat/Direct3d/Hooks.cpp @@ -28,7 +28,11 @@ namespace CompatPtr d3d; HRESULT result = dd->QueryInterface(&dd, Compat::getIntfId(), reinterpret_cast(&d3d.getRef())); - if (FAILED(result)) + if (SUCCEEDED(result)) + { + CompatVtable>::s_origVtable = *d3d.get()->lpVtbl; + } + else { Compat::Log() << "ERROR: Failed to create a Direct3D object for hooking: " << Compat::hex(result); }