Как управлять вращением и поворотом глазка в единстве 5.3.x

Я хочу контролировать вращение и положение Oculus DK2 в Unity 5.3. Это не кажется тривиальным, я уже перепробовал все, что мог найти на форуме Unity, но, похоже, ничего не работает. Сценарий CameraRig ничего не делает, когда я его меняю. Я хочу отключить все вращение и положение, потому что у меня есть система mocap, которая более надежна для этих вещей.

Нужна помощь!

1 ответ

Чтобы иметь возможность контролировать позу, ваша камера должна быть представлена ​​с помощью OVRCameraRig, который входит в комплект OVRPlugin для Unity 5.

Если у вас есть, вы можете использовать UpdatedAnchors событие от камеры для преобразования данных mocap в положение камеры, просто перезаписать значение OVRCameraRig.trackerAnchor для головы и OVRCameraRig.leftHandAnchor а также OVRCameraRig.rightEyeAnchorдля положения рук, если ваш костюм поддерживает их.

public class MocapController : MonoBehavior
{    
    public OVRCameraRig camera; //Drag camera rig object on to the script in the editor.

    void Awake()
    {
        camera.UpdatedAnchors += UpdateAnchors 
    }

    void UpdatedAnchors(OVRCameraRig rigToUpdate)
    {
        Transform headTransform = GetHeadTransform(); //Write yourself
        Transform lHandTransform = GetLHandTransform(); //Write yourself
        Transform rHandTransform = GetRHandTransform(); //Write yourself

        rigToUpdate.trackerAnchor = headTransform;
        rigToUpdate.leftHandAnchor= lHandTransform;
        rigToUpdate.rightHandAnchor= rHandTransform;
    }
}
Другие вопросы по тегам