Триггер Unity определяет, не вышел ли игрок из коллайдера - PullRequest
0 голосов
/ 11 апреля 2020

Я использую OnTriggerEnter и OnTriggerExit для имитации лестниц. Когда я поднимаюсь по лестнице, OnTriggerExit срабатывает, как только верх коллайдера игрока находится за пределами коллайдера лестницы, в то время как нижняя часть коллайдера все еще находится внутри него. То же самое при спуске, OnTriggerExit срабатывает, как только нижняя часть коллайдера игрока выходит из коллайдера, а остальная часть все еще внутри. Могу ли я (и как) определить, находится ли нижняя или верхняя часть коллайдера полностью вне лестничного коллайдера и не только начинает выходить из нее?

1 Ответ

0 голосов
/ 11 апреля 2020

Нам понадобится больше информации, например, некоторый код или, по крайней мере, несколько скриншотов вашей установки. Однако я думаю, что вы можете решить эту проблему двумя способами:

Вместо отдельных триггеров для каждой части тела, вместо этого создайте один. большой.

Или вы можете связать свои триггеры вместе. В этом случае каждый триггер должен вызывать родительский компонент и увеличивать целое число (int TotalAmountOfCollidersTriggered = 0) в onTriggerExit, чтобы уменьшить это значение. Затем, когда значение положительное, вы знаете, что один из ваших коллайдеров запускает что-то, а когда значение равно 0, вы знаете, что коллайдер нигде не запущен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...