Search Issue Tracker

Fixed

Fixed in 6000.0.58f1, 6000.2.5f1, 6000.3.0b2, 6000.4.0a1

Votes

0

Found in

6000.0.57f1

6000.2.3f1

6000.3.0b1

Issue ID

UUM-116541

Regression

Yes

Crash in PhysicsManager::IgnoreCollision when a GameObject with “Is Trigger” enabled enters a collision in a specific project

-

How to reproduce:
1. Open the attached “IN-112677“ project
2. Open the "Main" Scene
3. Enter Play mode
4. In the Game window, click on the screen near the Player GameObject (the white sphere)
5. Wait until the white dot and the Player GameObject collide
6. Observe the crash

Reproducible with: 6000.0.15f1, 6000.0.57f1, 6000.2.3f1, 6000.3.0b1
Not reproducible with: 6000.0.14f1 (e12ab2d6a089)

Reproducible on: MacOS 15.6.1 (M4), Windows 11 (by user)
Not reproducible on: No other environments tested

Notes:
- Also reproducible in Standalone Player
- Moving the Player GameObject out of the HOME_TEAM hierarchy (making it a root object) stops the crash from reproducing

First few lines of the stack trace:

{noformat}0x00007FFB7EB6B7DE (Unity) PhysicsManager::IgnoreCollision
0x00007FFB7DF9190A (Unity) Physics_CUSTOM_IgnoreCollision
0x0000019CDEFC1D28 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.Physics:IgnoreCollision_Injected (intptr,intptr,bool)
0x0000019CDEFC1C1B (Mono JIT Code) UnityEngine.Physics:IgnoreCollision (UnityEngine.Collider,UnityEngine.Collider,bool)
0x0000019CDD787743 (Mono JIT Code) [D:\Unity\Projects\SimpleManager\Assets\Scripts\PlayerAI.cs:146] PlayerAI:OnTriggerEnter (UnityEngine.Collider)
0x0000019CDD7878A3 (Mono JIT Code) (wrapper runtime-invoke) <Module>:runtime_invoke_void__this___object (object,intptr,intptr,intptr)
0x00007FFB4B256C4E (mono-2.0-bdwgc) [C:\build\output\Unity-Technologies\mono\mono\mini\mini-runtime.c:3445] mono_jit_runtime_invoke {noformat}

  1. Resolution Note (fix version 6000.4.0a1):

    The crash seen in the reproduction project happens due to the Player script having a reference to a prefab asset and using that directly rather than a instance of said prefab. A prefab asset does not belong to a unity scene unless instantiated and at that point the GameObject inside the scene is a brand new Object from the engine's point of view. The only other case where the prefab asset can be referenced is when it is embedded in the scene at that point referencing the asset directly will work.

    The reason why this crash didn't happen before is because we didn't secure Physics.IgnoreCollision enough and could end up with incorrect data being stored.

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.