예제 #1
0
 void Start()
 {
     if (Application.platform == RuntimePlatform.Android)
     {
         m_IsLeftHandMode = HvrApi.GetControllerHandle().IsLeftHandMode();
         HVRLogCore.LOGI(TAG, "Start m_IsLeftHandMode: " + m_IsLeftHandMode);
     }
 }
예제 #2
0
 private void OnApplicationPause(bool pause)
 {
     if (!pause)
     {
         if (Application.platform == RuntimePlatform.Android)
         {
             m_IsLeftHandMode = HvrApi.GetControllerHandle().IsLeftHandMode();
             HVRLogCore.LOGI(TAG, "OnApplicationPause m_IsLeftHandMode: " + m_IsLeftHandMode);
         }
     }
 }
예제 #3
0
    private void GetControllerHandle()
    {
        IControllerHandle ControllerHandle = HvrApi.GetControllerHandle();

        if (ControllerHandle == null)
        {
            HVRLogCore.LOGW(TAG, "ControllerHandle is null");
            return;
        }
        int[] indices = ControllerHandle.GetValidIndices();
        if (Application.platform == RuntimePlatform.Android)
        {
            if (gameObject.name.Equals("HVRLeftController"))
            {
                HVRLogCore.LOGI(TAG, "current is left controller");
                if (indices.Length >= 3)
                {
                    m_LeftController = ControllerHandle.GetControllerByIndex(indices[2]);
                }
                m_Controller        = m_LeftController;
                m_IsRightController = false;
                if (m_LeftController == null || !m_LeftController.IsAvailable())
                {
                    HVRLogCore.LOGI(TAG, "left controller is not available");
                    gameObject.SetActive(false);
                }
            }
            else
            {
                HVRLogCore.LOGI(TAG, "current is right controller");
                m_RightController   = ControllerHandle.GetControllerByIndex(indices[1]);
                m_Controller        = m_RightController;
                m_IsRightController = true;
            }
        }
        else
        {
            m_Controller      = ControllerHandle.GetControllerByIndex(indices[1]);
            m_RightController = m_Controller;
            m_LeftController  = m_Controller;
        }
    }