Я думаю, игрок умирает немедленно, потому что на земле тоже есть коллайдер, которого игрок касается. попробуйте добавить тег к объекту перед игроком, и в своем коде проверьте тег перед вызовом функции завершения игры.
if(hit.gameobject.tag == "tag" && hit.point.z > transform.position.z + controller.radius)
Death();