Unreal Engine 4
http://uengine.ru/forum/

Как привязать ACharacter к VR шлему
http://uengine.ru/forum/viewtopic.php?f=19&t=4411
Страница 1 из 1

Автор:  andre [ 25 янв 2017, 20:50 ]
Заголовок сообщения:  Как привязать ACharacter к VR шлему

Здравствуйте! Хотел бы спросить есть ли способ привязать шлем к объекту класса ACharacter? То есть что я хочу: чтобы сетка персонажа двигалась вслед за мной в шлеме, имеется ввиду движения и повороты головы(а вслед за ней и face персонажа в игре)
Я начинающий в unreal и как я понял объект класса КамераКомпонент не подходит для этого дела, т.к. привязывается только картинка с монитора.
Есть мб какой класс к которому мне смотреть более детально?

Автор:  andre [ 10 мар 2017, 18:34 ]
Заголовок сообщения: 

Ух .в общем расскажу если вдруг кому интересно. Для того чтобы это сделать - пришлось перелопатить данные элементы:
ACharacterMovementCommonent
ACharacter
UCameraComponent
UCapsuleComponent(хотя в принципе можно обойтись 3мя выше, зависит от целей)
Благо опыт на С++ 10 лет дал возможности копаться в этих сорцах.
В общем если кто будет заниматься физикой тела(объекта) для VR - вам копать в этом направлении.
Пытаться что-либо сделать для APawn и APawnMovementComponent путь в тупик(нет ни физики, ни сети) - по умолчанию просто летающая камера

Автор:  AntiAnti [ 18 апр 2017, 13:23 ]
Заголовок сообщения: 

Нет. VR-шлем ассоциируется с камерой. Положение игрока всегда определяется по положению камеры, а не актора. Если проект не сетевой, использовать ACharacter вообще не особо правильно, лучше наследоваться от APawn. Коллайдер в виде сферы можно приаттачить к камере. Если нужна именно капсула, придется обновлять ее позицию в Tick(...).

Автор:  andre [ 24 апр 2017, 20:07 ]
Заголовок сообщения:  Re:

AntiAnti писал(а):
Нет. VR-шлем ассоциируется с камерой. Положение игрока всегда определяется по положению камеры, а не актора. Если проект не сетевой, использовать ACharacter вообще не особо правильно, лучше наследоваться от APawn. Коллайдер в виде сферы можно приаттачить к камере. Если нужна именно капсула, придется обновлять ее позицию в Tick(...).


А Я разве говорил что Шлем привязан к чему-то другому? Где я это писал. Класс Камеры нужно переопределить, именно для того чтобы отвязать шлем от камеры, но не полностью(если полностью, то можно просто галочку выставить), там есть свои нюансы.. Иначе можно столкнуться с рядом проблем в сложном проекте(когда мы реализуем полную физику передвижения)

Твой подход - сделает просто летающую голову, которая не будет иметь физику движения по поверхности. Сфера и капсула не имеют физики вообще, только реакцию на столкновения. Можно конечно сделать сферу на камеру, реализовать простые методы обнаружения столкновений, а также реагирования на них - получиться игра типо колобка=) Но опять таки
- Как ты будешь двигать камеру, если вдруг с чем то столкнулась - ты в курсе что если одновременно пытаться кодом подвинуть камеру, а также если двигать камеру от движений шлема (голову не заставить застыть на месте без движения) - камера вед привязана в шлему - может получиться ужасный эффект с нехилым таким головокружением, что через 5 минут игру захочется выключить и удалить... Видел наверное гневыне отзывы в Стиме по этому поводу что играть нереально более 10-20 минут. Ты тестил то сам чего написал или просто рассуждаешь?
- как обрабатывать движения по текущему полу? Или локи только плоские, с Z=0 по всему уровню..
- а как забираться на небольшие препятствия просто от движений вперед
- как запретить игроку пролазить в разного рода щели головой, ведь сфера то только там, или у нас игра в колобка? Двигать еще и капсулу и в тик евенте? А как реализовать обратную связь - тоесть потом опять придеться двигать руками камеру - возвращаемся к первому пункту головокружения. Да и вообще этот метод напоминает мне плохую заднеприводную рекурсию - ну явно ведь не такая модель передвижения должна быть
- как реализовать физику падения, если мы вдруг спрыгнули
- как реагировать на воду, в том числе движения в воде..
- А что на счет физики, если нужно подать импульс на игрока,
- как двигаться на движущихся платформах и тд и тп, тут много что делать придется.. Это же целая история и элементы коллизии не имеют ничего встроенного для решения этих задач, хоть сфера, хоть капсула

Хотя конечно зависит от целей, Если цель сделать простую игрушку или демку - Передвижение телепорт, колайдинг только на голову или вообще без оного - то да, пойдет! Ведь если двжиения только телепорт далеко мы в стену не уйдем - тут можнео придумать пару простых решений. Например в некоторых простых играх если залезаешь за текстуры всен теменее вокруг и это будет типо сигналом что полез куда-то нетуда, ходя по комнате) А если делать реально крутой проэкт с полной физикой передвижения, по сложной поверзности - причем не только по воздуху, а еще и по земле, в воде, по другим специфик типам поверхности(допустим лед), Сетью! - в этом случае наследовать от Pawn это делать туеву кучу работы, что уже и так сделана в Character

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/