コード例 #1
0
 public virtual void UpdateState()
 {
     if (Time.frameCount != m_PrevFrameCount)
     {
         m_PrevFrameCount = Time.frameCount;
         m_PrevState      = m_State;
         //
         XDevicePlugin.GetInputState(this.handle, ref this.m_State);
     }
 }
コード例 #2
0
        public virtual void UpdateState()
        {
            if (Time.frameCount != m_PrevFrameCount)
            {
                m_PrevFrameCount = Time.frameCount;
                m_PrevState      = m_State;
                //
                int result = XDevicePlugin.GetInputState(this.handle, ref this.m_State);

                // For 3dof standard.
                if (result > -1 && m_State.axes[(int)ControllerAxis.PrimaryThumbX] != 0.0f && m_State.axes[(int)ControllerAxis.PrimaryThumbY] != 0.0f)
                {
                    m_TouchPos.Set(m_State.axes[(int)ControllerAxis.PrimaryThumbX], m_State.axes[(int)ControllerAxis.PrimaryThumbY]);
                    //
                    m_TouchPos.x = (m_TouchPos.x + 1.0f) * .5f;
                    m_TouchPos.y = (m_TouchPos.y - 1.0f) * -.5f;
                }
            }
        }
コード例 #3
0
 public virtual void UpdateState()
 {
     if (Time.frameCount != m_PrevFrameCount)
     {
         m_PrevFrameCount = Time.frameCount;
         m_PrevState      = m_State;
         //
         XDevicePlugin.GetInputState(this.handle, ref this.m_State);
         // For Daydream standard.
         if (m_State.axes[(int)ControllerAxis.PrimaryThumbX] != 0.0f && m_State.axes[(int)ControllerAxis.PrimaryThumbY] != 0.0f)
         {
             m_TouchPos.Set(m_State.axes[(int)ControllerAxis.PrimaryThumbX], m_State.axes[(int)ControllerAxis.PrimaryThumbY]);
             //
             m_TouchPos.x = (m_TouchPos.x + 1.0f) * .5f;
             m_TouchPos.y = (m_TouchPos.y - 1.0f) * -.5f;
         }
         //
         TouchpadToDpad();
         TouchpadToSwipe();
     }
 }
コード例 #4
0
 /// <summary>
 /// Update the tracking data from native plugin(called just once per frame).
 /// </summary>
 public virtual void UpdateState()
 {
     if (m_Handle >= 0)
     {
         if (Time.frameCount != m_PrevFrameCount)
         {
             m_PrevFrameCount       = Time.frameCount;
             m_PrevState_frameCount = m_State.frameCount;
             //
             if (anchor != null && m_UseAnchorProjection)
             {
                 m_AnchorMatrix = anchor.localToWorldMatrix;
                 if (trackingSpace != null)
                 {
                     m_AnchorMatrix = trackingSpace.worldToLocalMatrix * m_AnchorMatrix;
                 }
             }
             //
             XDevicePlugin.GetInputState(m_Handle, ref m_State);
             //
         }
     }
 }