Как правильно телепортировать игрока в Unity с помощью контроллера Daydream?

Я пытаюсь телепортировать пользователя в Unity 2017.2.1f1 с помощью Google VR SDK, но когда пользователь помещается в новую позицию, контроллер Daydream указывает в странном направлении и не соответствует фактической ориентации контроллера ( эмулировать или на реальном устройстве).

MainCamera вложена в Player. GvrControllerPointer также вложен в Player. Я перемещаю GameObject Player со следующим внутри GameObject телепорта:

public void OnPointerClickDelegate(PointerEventData data) {
    mPlayer.transform.position = new Vector3(transform.position.x, mPlayer.transform.position.y, transform.position.z);
}

Player находится в (0, 6, 0), а MainCamera и GvrControllerPointer оба (0, 0, 0).


person Mike Pape    schedule 16.12.2017    source источник


Ответы (1)


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

person Mike Pape    schedule 17.12.2017