Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice
  2. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  3. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

5.4 Beta Bug: Crash inside CleanupDrawMeshRawFromNodeQueue

Discussion in '5.4 Beta' started by kierand, Apr 8, 2016.

  1. kierand

    kierand

    Joined:
    Sep 22, 2014
    Posts:
    32
    Since upgrading to 5.4, we get reasonably random crashes inside CleanupDrawMeshRawFromNodeQueue on the Unity render thread.

    We have noticed that this happens much more when we are in a split screen game so I suspect that it is more likely to happen the more cameras you have in the scene.

    Also it appears to be timing related as for a while I managed to stop it happening by deferring the turning on of some projectors in the scene for a few seconds. However that work around no longer works.

    Here are a couple of example callstacks:

    5.4 Beta Bug: Crash inside CleanupDrawMeshRawFromNodeQueue

    > test.exe!SharedGfxBuffer::`vector deleting destructor'(unsigned int) Unknown
    test.exe!DrawUtil::CleanupDrawMeshRawFromNodeQueue(class RenderNodeQueue &,unsigned int) Unknown
    test.exe!RenderNodeQueue::Cleanup(void) Unknown
    test.exe!RenderNodeQueue::~RenderNodeQueue(void) Unknown
    test.exe!SharedRendererScene::~SharedRendererScene(void) Unknown
    test.exe!SharedRendererScene::`scalar deleting destructor'(unsigned int) Unknown
    test.exe!DepthPass::~DepthPass(void) Unknown
    test.exe!ReplacementPass::`scalar deleting destructor'(unsigned int) Unknown
    test.exe!GfxDeviceAsyncCommand::Arg::Release(struct MemLabelId const &) Unknown
    test.exe!GfxDeviceWorker::RunCommand(class ThreadedStreamBuffer &) Unknown
    test.exe!GfxDeviceWorker::Run(void) Unknown
    test.exe!GfxDeviceWorker::RunGfxDeviceWorker(void *) Unknown
    test.exe!Thread::RunThreadWrapper(void *) Unknown
    kernel32.dll!00000000776859ed() Unknown
    ntdll.dll!00000000777bb371() Unknown

    > test.exe!SharedMeshRenderingData::Unload(void) Unknown
    test.exe!SharedMeshRenderingData::~SharedMeshRenderingData(void) Unknown
    test.exe!SharedMeshRenderingData::`scalar deleting destructor'(unsigned int) Unknown
    test.exe!DrawUtil::CleanupDrawMeshRawFromNodeQueue(class RenderNodeQueue &,unsigned int) Unknown
    test.exe!RenderNodeQueue::Cleanup(void) Unknown
    test.exe!RenderNodeQueue::~RenderNodeQueue(void) Unknown
    test.exe!SharedRendererScene::~SharedRendererScene(void) Unknown
    test.exe!SharedRendererScene::`scalar deleting destructor'(unsigned int) Unknown
    test.exe!DepthPass::~DepthPass(void) Unknown
    test.exe!ReplacementPass::`scalar deleting destructor'(unsigned int) Unknown
    test.exe!GfxDeviceAsyncCommand::Arg::Release(struct MemLabelId const &) Unknown
    test.exe!GfxDeviceWorker::RunCommand(class ThreadedStreamBuffer &) Unknown
    test.exe!GfxDeviceWorker::Run(void) Unknown
    test.exe!GfxDeviceWorker::RunGfxDeviceWorker(void *) Unknown
    test.exe!Thread::RunThreadWrapper(void *) Unknown
    kernel32.dll!00000000776859ed() Unknown
    ntdll.dll!00000000777bb371() Unknown
     
  2. kierand

    kierand

    Joined:
    Sep 22, 2014
    Posts:
    32
    I have tracked this down somewhat. It's due to SSAO. We were using an (old) version of SSAOPro. Disabling that causes the crash to go away. I tried to update to the latest version but that also causes the crash. I then tried converting to use Unities SSAO instead but that also results in the same crash. I tried disabling all other camera post effects and it still crashes. Finally I tried statically adding it to the camera prefab that we instantiate instead of dynamically adding it at runtime, but that still produces the crash.

    So it seems that when using any (?) SSAO, in our title, you will get this crash. For now we have disabled SSAO, but we really could do with either finding a version that does not crash or for the underlying issue in Unity to be fixed.
     
    CineTek likes this.
  3. CineTek

    CineTek

    Joined:
    Jul 12, 2013
    Posts:
    98
    WoW! We had some random crashes in our demo build and disabling SSAO totally fixed it!
     
    kierand likes this.
  4. deab

    deab

    Joined:
    Aug 11, 2013
    Posts:
    93
    Also seeing the same crash and call stack as @kierand. Disabling SSAO Pro not seeing crashes. No problems seen in Editor so far, just Windows builds.

    I'm using 5.04b14, and today deleted and reinstalled SSAO Pro via the Asset Store window.

    Will post to the SSAO thread.
     
  5. kierand

    kierand

    Joined:
    Sep 22, 2014
    Posts:
    32
    @deab can you post the link to your other post here so that we can check for responses there too please?

    Also, to point out that while you only saw issues in Windows exe, we also saw issues in editor and on console platforms too. The repro rates and steps were different for each though.
     
  6. deab

    deab

    Joined:
    Aug 11, 2013
    Posts:
    93
  7. kierand

    kierand

    Joined:
    Sep 22, 2014
    Posts:
    32
    Great, thanks.
     
  8. Alex-Lian

    Alex-Lian

    Guest

    Could we get a bug report # please?
     
  9. deab

    deab

    Joined:
    Aug 11, 2013
    Posts:
    93
    Can I include a paid asset in a bug submission? I'm using SSAO Pro.
     
  10. kierand

    kierand

    Joined:
    Sep 22, 2014
    Posts:
    32
    The bug case number is 786209.
     
  11. Alex-Lian

    Alex-Lian

    Guest

    Yes. Though recommended to make sure the bug is marked non-public.