Остановить вращение на индексном триггере - PullRequest
0 голосов
/ 22 декабря 2018

Я создаю Vr-мир с единством для OculusGo.Я использую OVR CameraRig и утилиты Oculus.У меня есть модель, которая вращается по следующему сценарию:

public class rotation_2 : MonoBehaviour
{
public bool _shouldRotate = true;

void Update()
   {
    if (_shouldRotate)
        transform.Rotate(new Vector3(0, Time.deltaTime * 8, 0));
   }

void OnMouseDown()
   {
    if (_shouldRotate)
        _shouldRotate = false;
   }
}

В данный момент модель вращается и перестает вращаться при нажатии кнопки мыши.Он должен продолжать вращаться, когда кнопка мыши отпущена, но это не так.Почему?

На следующем шаге я хочу перейти с мыши на контроллер OculusGo.Так что не «кнопка мыши» вызывает «остановку вращения», а контроллер OculusGo.

Спасибо и счастливого Рождества!

1 Ответ

0 голосов
/ 26 декабря 2018

В данный момент модель вращается и прекращает вращаться при нажатии кнопки мыши.Он должен продолжать вращаться, когда кнопка мыши отпущена, но это не так.Почему?

Вы используете событие OnMouseDown.Это событие всегда будет срабатывать при нажатии кнопки мыши, поэтому для _shouldRotate устанавливается значение false и прекращается движение.Вам нужно использовать событие OnMouseUp, которое будет срабатывать при отпускании кнопки мыши.

На следующем шаге я хочу перейти с мыши на контроллер OculusGo.Таким образом, не «кнопка мыши» вызывает «остановку вращения», а контроллер OculusGo.

Для этого следующего шага вам нужно найти документацию OculusGo и найти события, которые запускаются прикнопка нажата и отпущена.Вам нужно будет найти что-то похожее на OnMouseUp и;возможно, проверьте аргумент, отправленный функции, чтобы идентифицировать кнопку, которая запустила событие.

Надеюсь, это поможет и вам тоже счастливого Рождества.

...