[SOLVED] I have a mob spawning system that uses a very large Sphere Collider tied to a gameObject to denote where a pack of monsters should be spawned on a terrain. The radius is 30m. When the player enters the sphere the mobs are spawned. Despawning usus an unrelated system. The player has a NavMeshAgent, a rigidbody and sits on a terrain. The following settings are used: https://i.imgur.com/qJ9dgPn.png https://i.imgur.com/0vo9lgw.png I'm having this situation where OnTriggerEntered and OnTriggerExited are firing one after another in rapid succession often at random times, which I could understand if I was standing right at the edge of the sphere and due to physics and rounding errors I was extremely subtly going in and out by 0.001 or something. However after logging the distance between the player and the colliders center when the event is triggered it's varying by a huge amount, even though I'm standing still! It can vary from a distance of 33.8 to 48.5.. Interesting it's the player's y axis that seems to be oscillating from -30.1 to -9.8. Is there some physics option or interpolation of the position I've missed? I could tweak the values I've shown in the screenshots until it feels better, but I'd rather someone with experience let me know for sure, thanks UPDATE 1: Just as an FYI, visually there is no player y oscillation at all, it appears he's always on the terrain. Even in the inspector.. but not when I dump the values to the log https://i.imgur.com/t7oxr5g.png UPDATE 2: Although the player's y position when passed through by the two triggers is is vibrating. When I dump the players position directly during Update() in a script that is on it it's rock solid. However they are for sure the same object. I've even checked by dumping out the GetInstanceID() of both of them.