Search Issue Tracker

Fixed

Fixed in 2022.2.17f1, 2023.1.0b14, 2023.2.0a11

Votes

129

Found in

2022.2.5f1

2023.1.0b2

2023.2.0a6

Issue ID

UUM-25831

Regression

No

[Silicon] Crash on ScriptableRenderLoopJob when machine is left idle while the Editor is in Play mode

--

-

Reproduction steps:
1. Open the attached project “URPrepro”
2. Open the “StarSystem” Scene
3. Enter the Play mode
4. Leave the machine idle

Expected result: Editor stays in the Play mode
Actual result: Editor crashes after some time of leaving it idle

Reproducible with: 14.0.6 (2022.2.5f1), 15.0.4 (2023.1.0b2)
Couldn’t test with: 10.10.1 (2020.3.44f1) - No Silicon Editor, 12.1.10 (2021.3.18f1) Console error - “Assets/UI Toolkit/Scripts/RadialProgress.cs(59,9): error CS0246: The type or namespace name 'Painter2D' could not be found (are you missing a using directive or an assembly reference?)”

Reproducible on: MacOS 13.1 (M1 Max)
Not reproducible on: MacOS 13.1 (Intel), Windows 10

Notes:
Doesn’t reproduce with Rosetta.
Other users have reported URP crashes with the same stack trace but different steps.

First lines of the stack trace:
#0 0x000001048e7104 in ScriptableRenderLoopJob(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*)
#1 0x00000104c2b1d8 in GfxDevice::ExecuteAsync(int, void (*)(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*), GfxDeviceAsyncCommand::ArgScratch*{*}, GfxDeviceAsyncCommand::Arg const{*}, JobFence const&)
#2 0x000001048e3e6c in ScheduleRenderJobs(unsigned int, ScriptableRenderContextArg const*, JobFence const&)
#3 0x000001048e39c4 in ExecuteDrawRenderersCommand(ScriptableRenderContextArg*)
#4 0x000001048d7628 in ScriptableRenderContext::ExecuteScriptableRenderLoop()
#5 0x0000032da8afec in (wrapper managed-to-native) UnityEngine.Rendering.ScriptableRenderContext:Submit_Internal_Injected (UnityEngine.Rendering.ScriptableRenderContext&) [

{0x14fa71738}

+ 0x6c] (0x32da8af80 0x32da8b04c) [0x12cf42a80 - Unity Child Domain]

  1. Resolution Note (fix version 2023.2.0a11):

    Crash fixed in ScriptableRenderLoop that occured on Silicon/IOS/Android resolved. This possibly solves other crashes related to the job system on these platforms.

  2. Resolution Note (fix version 2023.1.0b14):

    Fixed common crash on IOS/Android/Silicon platforms. Most commonly crashed in ScriptableRenderLoop.

Comments (47)

  1. ifightnoman

    Mar 15, 2023 13:14

    It's a sickening feeling to buy top of the line hardware to start game development and realize you've made a huge mistake because Unity is unusable on M1s, thanks to this bug.

    It's also mischaracterized here; it's not something that happens "when machine is left idle." It happens *every* time. Bailing out to 2021 or earlier is your only option, and those suffer from other problems. If you want URP 14 features you're basically dead in the water.

  2. racecat_raf

    Mar 10, 2023 08:05

    I bought an M1 Mac over a year ago and I had to return it because unity was no short of unusable. Fast forward a year later, got a new M2 MacBook surely thinking that after 2 years since Apple's new chips came out they would had figured it out.....and guess what?! It's WAY WORSE. What happened to this company?

  3. Ciro_coherence

    Mar 09, 2023 15:22

    Same here, crashes with ScriptableRenderLoopShadowsJob at the beginning of the stack.
    I thought starting the editor with -force-gfx-st would solve the issue and it seemed to do it for a while, but the editor is still crashing - though less (?)

  4. cgaisc

    Mar 07, 2023 11:30

    Working with this bug feels like working on an old Windows 95 maschine bluescreening every 10 Minutes... Pleeease fix this!

  5. ckempke

    Mar 03, 2023 16:19

    Like a bunch of others here, I'm a dead stop. This happens, reliably, 30 seconds after I start my game on anything later than 2021.3, and it's completely preventing me from getting anything done. I don't understand how a bug happening to so many people that has no workaround or path forward can be "Under consideration" rather than "All hands on deck nights and weekends until this is resolved." It effectively makes the recommended pipeline useless on a supposedly supported platform.

  6. LorenzoNuvoletta

    Feb 28, 2023 19:15

    At how many votes does it get upgraded from "Under Consideration"?

  7. bacim

    Feb 27, 2023 19:01

    I have the same or similar issue and it makes 2022.2.x + URP pretty much unusable. It seems to happen more frequently when I have multiple cameras setup with render targets, but maybe that's just the setup I have currently. I've been trying to upgrade a 2021.3 project for a while because I would love to use forward+ and saw issue this issue in the earliest 2022.2 betas. This doesn't happen in previous major versions: 2021.3.x and 2022.1.x both work without issues.

    I was able to replicate this issue fairly easily with a new URP project with 2022.2.6 Apple Silicon / M1 Mac and a generic archviz asset from the asset store. I've created a few cameras with render targets attached to them, pressed play and just waited a couple of minutes.

    I'm fairly certain I've seen this happen while editing my main project, not just play mode.

  8. NickLeeJ

    Feb 27, 2023 08:29

    I think I'm having the same issue. This is the first lines of the log. Anybody have a temp fix? I can't seem to make any real progress. This is happening on a 2021 M1 Pro MacBook Pro on all versions of Unity for Apple Silicon.

    Obtained 83 stack frames.
    #0 0x00000102e745dc in ScriptableRenderLoopShadowsJob(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*)
    #1 0x000001031ded9c in GfxDevice::ExecuteAsync(int, void (*)(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*), GfxDeviceAsyncCommand::ArgScratch**, GfxDeviceAsyncCommand::Arg const*, JobFence const&)
    #2 0x00000102e6da7c in ScheduleRenderJobs(unsigned int, ScriptableRenderLoopShadowsArg const*, JobFence const&)
    #3 0x00000102e6d6b4 in ExecuteDrawShadowsCommand(SlicedDrawShadow const&)
    #4 0x00000102e733c0 in ScriptableRenderContext::ExecuteRendererList(RendererList)
    #5 0x00000102df78f0 in RenderingCommandBuffer::ExecuteCommandBufferWithState(ShaderPassContext&, RenderNodeQueue&, RenderingCommandBufferState*, unsigned int, ComputeQueueType) const

  9. Rulez777

    Feb 22, 2023 06:01

    Im experiencing crash in mac builds.

  10. jazzay22

    Feb 20, 2023 18:52

    Hi I reported a similar but slightly different bug:
    "[M1] Unity 2022.2 crashes in Gfx Shadow processing constantly"

    Unfortunately Unity Triage closed that issue as a duplicate, when it is not exactly the same as this issue. That issue happens constantly, even when the machine is not left idle. Middle of Gameplay, editing, etc.

    The callstack is different as well:
    UnityPlayer.dylib 0x10eaa59b4 ScriptableRenderLoopShadowsJob(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*) + 72
    1 UnityPlayer.dylib 0x10efc5f08 GfxDevice::ExecuteAsync(int, void (*)(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*), GfxDeviceAsyncCommand::ArgScratch**, GfxDeviceAsyncCommand::Arg const*, JobFence const&) + 80
    2 UnityPlayer.dylib 0x10efc5f08 GfxDevice::ExecuteAsync(int, void (*)(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*), GfxDeviceAsyncCommand::ArgScratch**, GfxDeviceAsyncCommand::Arg const*, JobFence const&) + 80
    3 UnityPlayer.dylib 0x10ea9d6f4 ScheduleRenderJobs(unsigned int, ScriptableRenderLoopShadowsArg const*, JobFence const&) + 748
    4 UnityPlayer.dylib 0x10ea9d314 ExecuteDrawShadowsCommand(SlicedDrawShadow const&) + 872
    5 UnityPlayer.dylib 0x10eaa24f8 ScriptableRenderContext::ExecuteScriptableRenderLoop() + 1416

    This issue needs to be bumped in priority as it renders Unity 2022.2.X pretty much unusable, game builds included.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.