Forum Discussion

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

Anyone know what can freeze rendering but look around?

One of our customers is seeing this kind of freeze, where the VR image stops updating but you can still look around and past the edges of the last render.  The app itself isn't reporting a crash, so I'm wondering how to begin to debug this.  Could the app itself be in an infinite loop, with Oculus async reprojection allowing them to look around without the app itself cycling?  Or must the app still be cycling for them to be able to look around, with perhaps the renderer having crashed somehow?  

This build uses Unity 2020.3.35, but I posted here thinking it was more relevent to Quest than Unity behavior.

 

  • We finally caught it in Android Studio...

    So it's a job thread that's barfing on a particle system, which somehow is killing the renderer while the main thread continues to run.  Btw this crash has only been reported and reproed on the new firmware v55.

    Moving from Unity 2020.3.35f1 to 2020.3.47f1 seems to have fixed it for customers. I didn't specifically see such a crash fix in the release notes between then but there were several others related to particle systems.

9 Replies

  • It does look like the app has stopped responding. I would make a Development Build with Script Debugging enabled and try to attach Visual Studio, or at least open up the Meta Quest Developer Hub (or Android Studio) and monitor the debug output for exceptions.

  • We haven't gotten a repro ourselves, and doesn't appear to be an unhandled exception since nothing is in our crash logs.  Since the customer can keep looking around their space, it would seem our app thread has hung rather than crashed, while the rendering thread is continuing to draw that last rendered frame from new head perspectives.

  • We've now gotten a repro but there's nothing in the adb logs.  The app behaves exactly as if you connect the debugger and break execution.  Which we did, but we're using IL2CPP and VS can't load native Android symbol files, so now we're trying to catch the hang in Android Studio and break there.

  • We finally caught it in Android Studio...

    So it's a job thread that's barfing on a particle system, which somehow is killing the renderer while the main thread continues to run.  Btw this crash has only been reported and reproed on the new firmware v55.

    Moving from Unity 2020.3.35f1 to 2020.3.47f1 seems to have fixed it for customers. I didn't specifically see such a crash fix in the release notes between then but there were several others related to particle systems.

    • zojoi's avatar
      zojoi
      Honored Guest

      We're seeing this as well. 

      Since v55 came out, our game is crashing sporadically. It looks like the crash is happening during the particle update function due to a bad pointer of some kind (referencing an unknown memory address).  Our crash logs suggest that a worker thread might be ending prematurely.  We're using the particle system is built into Unity and are looking at upgrading now. Thanks for the info!

    • zojoi's avatar
      zojoi
      Honored Guest

      Are you sure that your update fixed the problem? We updated to the latest LTS version of Unity and particles are still randomly borking the game.

      • emalafeew's avatar
        emalafeew
        Protege

        Neither we nor customers who originally reported have seen it since the Unity upgrade to 2020.3.47f.   But that was just a hopeful workaround, if you have a repro it would be good to report as a Unity bug 

  • Meta is aware of the problem and rolling out a hotfix to v55, even though it's technically a Unity bug.

  • the_blow's avatar
    the_blow
    Honored Guest
    The same problem occurs frequently with Quest3. Is it just me?
    I'm using Unity 2022.1.4f1, the version of Quest3 is V57.