Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
ScottieBizzle's avatar
11 years ago

Direct mode crashing compute shaders in DX11

I'm developing a windows-based DX11-based shader authoring tool. I switched my app over to use "Direct HMD Access" and now the video driver crashes ( Nvidia 780 ti, Windows 8.1 pro ) whenever I try to run certain compute shaders. This is only when in direct mode and calling the ovr_Initialize() function on startup and not even enabling the rest of the oculus initialization code, simply calling the ovr_initialize() to let the SDK hijack the device or whatever it's doing.

Removing ovr_Initialize() works fine with the shaders. Also running in "Extend Desktop to HMD" mode and calling ovr_Initialize() works fine, so it has something to do with Direct mode and compute shaders. It crashes before I can get any DX debug information.

My scene consists of only a bunch of compute shaders for a smooth particle hydrodynamics ( SPH ) real-time liquid effect and a vertex/geometry/pixel shader for rendering the final result, nothing else.

Is this a known bug?

3 Replies

  • dpJudas's avatar
    dpJudas
    Honored Guest
    I'm seeing this one as well with my compute shader.

    If I add some flushes around the dispatch call and step with the Visual Studio debugger it crashes the Nvidia driver almost every time when I step past the third line:

    device_context->Flush();
    device_context->Dispatch(5, 6, 1);
    device_context->Flush();

    This only happens when I use direct mode. It never happens when I run it without the rift.
  • ortofon's avatar
    ortofon
    Honored Guest
    Same problem here. No way to use DX11 Compute Shader with 0.4.2 Oculus SDK in Unity.
    That means all our experiences are not running anymore :(

    The crash seems to happen when we call Dispatch();
    And like ScottieBizzle, when we stop to call ovr_initialize(); all is working well... but no stereoscopic camera working of course.

    Any clue ?