Тема: PhysX wrapper
Показать сообщение отдельно
Старый 01.04.2009, 23:50   #132
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: PhysX wrapper

При реализации капсульного контроллера персонажа, я использовал главный параметр - вектор коллизии. Твоя задача определить, стоит персонаж, или не стоит (неважно, летит или скользит). Для того чтобы получить вектор коллизии, просто получаем все контакты, и получаем вектор контакта самого низкого, далее нужно получить Pitch наклон его, для этого немного математики. Собственно далее если стоит, то позицию ставим на текущую+вектор движения, который мы сами меняем от нажатий. При этом Позиционируем, а силу движения постоянно обнуляем, если он стоит. Но тут главная задача правильно назначать вектор движения, и весьма геморойно применить плавное сбавление, если скорость движения привязана не к инерции а к переменным (которые не локальны, а глобальны осям). Но и это естественно решаемо, работой более глубоко. Я делал разбивку на градус направления (по X,Z координате), и скорость. Таким образом более реально будет двигаться, и разворачиваться..
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
Amatsu (02.04.2009), Harter (05.11.2009)