Поверните объект с фиксированной точкой с помощью контроллера в VR - PullRequest
0 голосов
/ 28 мая 2020

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

Вот что я хочу реализовать

  1. Пользователь захватывает объект.
  2. Пользователь тянет / толкает объект в любом направлении при захвате.
  3. В зависимости от движения контроллера (толкание / вытягивание) объект вращается как рычаг.
  4. Ограничение: Объект никогда не должен покидать свое положение, он должен оставаться фиксированным.

В этом видео показана иллюстрация -> Вращение с фиксированной точкой

Я пытаюсь реализовать это с помощью Unity и VRTK.

1 Ответ

0 голосов
/ 08 августа 2020

https://docs.unity3d.com/ScriptReference/Transform.RotateAround.html

Используйте только transform.RotateAround() и точное центральное положение, которое вы хотите повернуть, и первый параметр. Вы можете рассчитать угол с помощью Vector3.Angle и Transform.InverseTransformDirection.

Эта функция также уже реализована в примере в SteamVR SDK: https://assetstore.unity.com/packages/tools/integration/steamvr-plugin-32647

...