Получение игрового пространства виртуальной реальности в Godot и границ отслеживаемой области

С ARVROrigin вы можете получить центр игрового пространства в виртуальном мире, но я хотел бы знать, с каким пространством вокруг центра игрок должен работать. Для этого я хотел бы знать размеры игрового пространства и его ориентацию (при условии, что это прямоугольник ... не уверен для Quest), а также какое-то представление внешних границ отслеживаемой области. Таким образом, я могу настроить игровой процесс в зависимости от того, где находится игрок в физической среде.

Я подумываю воспользоваться отслеживаемой областью, чтобы динамически поставить стены в пространстве, чтобы создать бесконечное исследуемое здание, вроде невидимой дипломатии.


person RobKohr    schedule 18.10.2019    source источник


Ответы (1)


Используя плагин GodotVR, вы можете получить массив, представляющий границы стражей, с помощью следующего кода:

onready var ovrTrackingTransform = preload("res://addons/godot_ovrmobile/OvrTrackingTransform.gdns").new()
onready var ovrGuardianSystem = preload("res://addons/godot_ovrmobile/OvrGuardianSystem.gdns").new()

func _process(delta):
    print("GetTrackingSpace: " , ovrTrackingTransform.get_tracking_space())

    print("GetBoundaryVisible: ", ovrGuardianSystem.get_boundary_visible())
    print("GetBoundaryOrientedBoundingBox: ", ovrGuardianSystem.get_boundary_oriented_bounding_box())

Взято с сайта https://github.com/GodotVR/godot_oculus_mobile

person creikey    schedule 27.10.2019
comment
Это полезно, но работает только для Oculus Mobile. Есть ли похожие методы для Vive и Rift? - person RobKohr; 28.10.2019
comment
@RobKohr еще нет в плагине godot, но есть открытая проблема с добавлением этой функциональности в плагин здесь методы уже существуют в OpenVR. - person creikey; 29.10.2019