Exemple #1
0
    private void _SetManipulation(EManipulation iManpulation)
    {
        Manipulation = iManpulation;

        VRInteractionManipulationRay   manipulationRay   = m_Wand.GetComponent <VRInteractionManipulationRay>();
        VRInteractionManipulationHomer manipulationHomer = m_Wand.GetComponent <VRInteractionManipulationHomer>();

        if (manipulationRay == null || manipulationHomer == null)
        {
            MVRTools.Log(2, "[~] Some manipulation scripts are missing on the Wand.");
            return;
        }

        switch (Manipulation)
        {
        case EManipulation.None:
            MiddleVR.VRInteractionMgr.Deactivate(manipulationRay.GetInteraction());
            MiddleVR.VRInteractionMgr.Deactivate(manipulationHomer.GetInteraction());
            break;

        case EManipulation.Ray:
            MiddleVR.VRInteractionMgr.Activate(manipulationRay.GetInteraction());
            break;

        case EManipulation.Homer:
            MiddleVR.VRInteractionMgr.Activate(manipulationHomer.GetInteraction());
            break;

        default:
            break;
        }
    }
    protected override void Start()
    {
        base.Start();

        m_GrabEventSender = FindObjectOfType<VRInteractionManipulationRay>();
        if (m_GrabEventSender != null)
        {
            m_GrabEventSender.OnGrab += OnGrab;
        }

        m_WandTransform = MVRCameraUtils.GetInstance.p_WandTransform;

        m_CollisionMask = LayerMask.GetMask("TangibleGlitch");
    }
Exemple #3
0
    protected override void Start()
    {
        base.Start();

        m_GrabEventSender = FindObjectOfType <VRInteractionManipulationRay>();
        if (m_GrabEventSender != null)
        {
            m_GrabEventSender.OnGrab += OnGrab;
        }

        m_WandTransform = MVRCameraUtils.GetInstance.p_WandTransform;

        m_CollisionMask = LayerMask.GetMask("TangibleGlitch");
    }
 public void OnGrab(VRInteractionManipulationRay sender, VRInteractionManipulationRay.e_GrabStatus grabStatus)
 {
     switch (grabStatus)
     {
         case VRInteractionManipulationRay.e_GrabStatus.GRABBED:
             StartCoroutine("SyncPositionToWandTransform");
             break;
         case VRInteractionManipulationRay.e_GrabStatus.UNGRABBED:
             StopCoroutine("SyncPositionToWandTransform");
             break;
         default:
             return;
     }
 }
Exemple #5
0
    public void OnGrab(VRInteractionManipulationRay sender, VRInteractionManipulationRay.e_GrabStatus grabStatus)
    {
        switch (grabStatus)
        {
        case VRInteractionManipulationRay.e_GrabStatus.GRABBED:
            StartCoroutine("SyncPositionToWandTransform");
            break;

        case VRInteractionManipulationRay.e_GrabStatus.UNGRABBED:
            StopCoroutine("SyncPositionToWandTransform");
            break;

        default:
            return;
        }
    }