Search Issue Tracker
Fixed in 2019.1.X
Votes
0
Found in
2018.2.3f1
Issue ID
1071700
Regression
Yes
OnTriggerExit2D is not being triggered when disabling other GameObject with a Trigger
How to reproduce:
1. Open user's project.
2. Press Play.
3. Press 'Appear' button in the Game View.
4. Press 'Gone' button in the Game View.
Expected result: When disabled, GameObject's trigger triggers OnTriggerExit2D
Actual result: When disabled, GameObject's trigger does not trigger OnTriggerExit2D
Reproducible with - 2018.3.0a10, 2018.2.6f1, 2018.1.9f2, 2017.4.10f1, 2017.2.3p4, 2017.2.2p4
Not reproducible with - 2017.2.2p3, 2017.1.4p2
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [OpenGLES][XR] Zooming in on the camera's URP opaque texture causes "double vision" on Quest in OpenGLES3
- “[Worker0] Could not generate preview image“ error when opening macOS native plugin in the Inspector with Architecture to build for set to ARM 64-bit
- [iOS] Application.absoluteURL is empty on Awake/Start when opening via deep link with Splash Screen disabled
- Crash on MemoryManager::Deallocate when rapidly calling Addressables.LoadAssetAsync
- Crash on physx::shdfnd::atomicIncrement when adjusting values on a character controller component after entering Play mode in Prefab edit mode
mhardy
Jan 14, 2020 19:21
Is there any way to disable this "fix"?
I can see how some might consider this a bug, but I don't. If a GameObject is disabled, that is a very different action then it exiting a collider. It's been this way for years and I have one game that relies heavily on this behavior. This seems like a massive breaking change.
For example, my game relies on doing certain actions if, for example, an enemy ship leaves the playing field and thereby hits a border and fires OnTriggerExit2D. This Exit logic previously only ran if the ship actually hit the collider, now it's running for every single object that enters the play area - weather it actually leaves the border or is simply disabled.