Я хочу вращаться вокруг определенной точки в зависимости от движения головы пользователя. Функциональность такая же, как в демо-версии «Exhibit» в приложении Google Cardboard.
Как лучше всего вращаться вокруг такого объекта, как Exhibit, в приложении Google Cardboard?
Ответы (2)
Я новичок в Cardboard и Unity, но именно так я модифицировал пример поиска сокровищ от Google. для Unity 5.2.1 и Cardboard SDK 0.5.2:
- В средстве просмотра иерархии Unity я выбрал файл
Head
. В Инспекторе найдите скриптCardboard Head
и установите для свойстваTarget
значениеCube (Transform)
. - Отредактируйте сценарий
CardboardHead.cs
. В методеUpdateHead()
существующий код изменяет вращение головы в зависимости от ориентации картона. Я изменил код, чтобы применить вращение к целевому объекту следующим образом:
if (trackRotation) {
var rot = Cardboard.SDK.HeadPose.Orientation;
if (target == null) {
transform.localRotation = rot;
} else {
//transform.rotation = target.rotation * rot;
target.transform.localRotation = rot;
}
}
person
gnuf
schedule
15.10.2015
Это очень просто, если вы используете префаб CardboardMain. В Инспекторе для основной камеры просто переместите его положение Transform назад по оси Z. Теперь он будет вращаться вокруг точки, где находится головной родитель, как в демонстрации Exhibit.
person
smd
schedule
17.10.2015