Используя физику единства со SteamVR
Я хочу сделать игру на доске в VR с Unity. Поэтому, когда игрок выходит за пределы доски, он падает. Прямо сейчас единственный способ заставить это работать - использовать VRTK, который является другой системой физики, и это усложняет многие вещи.
Я поместил жесткое тело в CameraRig и снял флажок "кинематический". Игрок падает, но коллайдеры на других объектах больше не работают...
Есть ли способ использовать физику Unity с SteamVR и без VRTK??
Спасибо!
1 ответ
Во-первых, я хотел бы прочитать о Rigidbody и Colliders/Trigger Colliders - вот ссылка.
Вот полезная таблица с этого сайта:
Вам нужно будет использовать это, чтобы понять, почему игрок падает. Это CameraRig
на самом деле сталкивается с землей? Это триггерный коллайдер (у которого есть метод обратного вызова, но не происходит никакого физического столкновения). Есть много возможностей, почему.
Я написал скрипт, который вы можете перетащить в два объекта и посмотреть, сталкиваются ли они. Вы можете использовать это, если это поможет.
Проблема в VR с Vive состоит в том, что определить, где кто-то ходит, может быть сложно, так как мы отслеживаем только его голову и руки. Если у вас есть Vive Tracker и он подходит для вашего случая использования, вы можете использовать его для отслеживания чьей-либо ноги.
В прошлом я использовал Camera(eyes)
GameObject в пределах CameraRig
и получить это transform.position.x
а также transform.position.z
значение, чтобы определить, вышел ли он за пределы объекта, на котором стоит пользователь.
Надеюсь это поможет,
Liam