Bug Report OBS crashes 64-bit Unreal Engine 3 games in fullscreen mode

CasperGhost

New Member
I'm working on a game using Unreal Engine 3. Fullscreen 64-bit builds of the game will crash some Windows 8 machines when using game capture mode. OBS continues running. 32-bit builds of the game do not crash. The crash happens in D3D9 Present() where it makes its way into GraphicsCaptureHook64.dll and then into d3d9.dll.

I was able to reproduce this issue using an unmodified 64-bit version of UDK.exe that comes with the free Unreal Development Kit. And again, the 32-bit version does not crash. I've only seen this on machines running Windows 8.1. Afaik, there are no other hooking programs running that would interfere with OBS.

Any ideas, tips, or links would be greatly appreciated.
 

Attachments

  • 2015-02-07-2027-26.log
    7.2 KB · Views: 45

CasperGhost

New Member
So I followed the suggestion in another thread and uninstalled Windows update KB2962409 and KB2955164 and can now perform a game capture on 64-bit versions of my game and the unmodified UDK.exe.

Is there an ETA on a fix for this?
 

R1CH

Forum Admin
Developer
Can you reproduce the crashing using a minimal D3D app, such as ones that come with the DirectX SDK?
 

CasperGhost

New Member
I wrote a small app that just clears and presents the back buffer and it crashes as before. When I uninstall the Windows update, it streams just fine.

The source code is attached below. Let me know if you need anything else.
 

Attachments

  • OBSTest.txt
    6.1 KB · Views: 33

R1CH

Forum Admin
Developer
Thanks, this is very helpful. Could you post a copy of the working c:\windows\system32\d3d9.dll (ie without the update that causes problems)? It looks like the OBS hooks aren't working correctly, but I'd need to see the difference between the old and new DLL to figure out why.

Also does this only happen with 64 bit apps, or both 32 and 64?
 

R1CH

Forum Admin
Developer
I believe I've found the cause. Please replace the 64 bit hook DLL in your OBS/plugins/GraphicsCapture folder with this one and see if it fixes the issue (you may be prompted to "update" - be sure to say no to avoid overwriting the new file).

https://r-1.ch/GraphicsCaptureHook64.zip
 

CasperGhost

New Member
It seems to work on two machines that were having problems. Thanks! I'll let it run for a while to stress test it.

Is this fix going to make it into the next patch? Also, do you think this dll is okay to use in the mean time?
 

R1CH

Forum Admin
Developer
Thanks for the feedback. Assuming no other issues come up it will make it into the next patch, you're welcome to keep using it in the meantime.

Also just to confirm, the issue only occurs in 64 bit applications?
 

Jeremy Rubin

New Member
I cant uninstall the KB2955164. It let me uninstall the first one but I cant get rid of the second one. Any updates on a patch to fix this?
 

Jeremy Rubin

New Member
I am computer stupid. Is there any way you can kinda do a step by step because I cant find where the graphics capture is let alone replace it. Really appreciate it.
 

R1CH

Forum Admin
Developer
Use the new GraphicsCaptureHook64.dll from https://r-1.ch/GraphicsCaptureHook64.zip.

You'll need to put it in your C:\Program Files\OBS\plugins\GraphicsCapture folder if you're using 64 bit OBS or C:\Program Files (x86)\OBS\plugins\GraphicsCapture if you're using 32 bit OBS.

Once you run OBS with the new GraphicsCaptureHook64.dll, it might ask you to "update" - make sure to say NO to the update or it will overwrite the new GraphicsCaptureHook64.dll with the older version.
 

SimGamerNerd

New Member
Hi guys,

I had this issue months ago. Uninstalled two windows update files and problem got resolved. I recently re installed Windows 8.1. These two windows update files are not installed and yet OBS doesn't work with iRacing64bit with SweetFX. I have replaced GraphicsHook64 with the one provided a few posts up but that is also not solving the problem.

No idea what to do to fix this. Any assistance will be highly appreciated.
 

Harold

Active Member
There has been major changes since feb 20 (when that post was made) so recplacing those hook dlls will likely break stuff.
Thread hijacking doesn't help you.
 
Top