СharacterController в присядку
Добавлено: 18 ноя 2019, 20:24
Использую СharacterController, т.к. он предоставляет много возможностей. Особенно шагание на ступеньки и регулирование высоты возможных ступенек.
1.
Наткнулся на древнюю проблему - если высота ступенек задана достаточно большой (но естественно не превышает половину роста) - СharacterController начинает задевать головой низкие потолки и дверные проемы, которые нормально проходит если уменьшить высоту шага. Первое упоминание этой проблему 12 год, а воз и ныне там.
https://forum.unity.com/threads/charact ... ps.202086/
Нормального решения нет, но я просто тупо уменьшил высоту контроллера, чтобы замедлялся но проходил.
Кто сталкивался и как решал?
2.
Сделал приседание - уменьшаю высоту капсулы. Причем снизу и персонаж как-бы падает, поэтому все плавно.
Вставание - возвращаю высоту - персонажа выталкивает из поверхности и это наверно не правильно, иногда может и застрять.
Чтобы не застрял, может быть придать ему ускорения вверх типа как при прыжке?
Но самое страшное - что делать если игрок встал в процессе пролезания под низким препятствием?
Нужно запретить ему вставать, но как?
Повесить над головой триггер или есть другие законные методы?
CollisionFlags над головой не сработает, касания нет, но вставать нельзя!
1.
Наткнулся на древнюю проблему - если высота ступенек задана достаточно большой (но естественно не превышает половину роста) - СharacterController начинает задевать головой низкие потолки и дверные проемы, которые нормально проходит если уменьшить высоту шага. Первое упоминание этой проблему 12 год, а воз и ныне там.
https://forum.unity.com/threads/charact ... ps.202086/
Нормального решения нет, но я просто тупо уменьшил высоту контроллера, чтобы замедлялся но проходил.
Кто сталкивался и как решал?
2.
Сделал приседание - уменьшаю высоту капсулы. Причем снизу и персонаж как-бы падает, поэтому все плавно.
Вставание - возвращаю высоту - персонажа выталкивает из поверхности и это наверно не правильно, иногда может и застрять.
Чтобы не застрял, может быть придать ему ускорения вверх типа как при прыжке?
Но самое страшное - что делать если игрок встал в процессе пролезания под низким препятствием?
Нужно запретить ему вставать, но как?
Повесить над головой триггер или есть другие законные методы?
CollisionFlags над головой не сработает, касания нет, но вставать нельзя!