playMaker

Author Topic: MouseLook for Mobile [SOLVED]  (Read 764 times)

Araz5

  • Playmaker Newbie
  • *
  • Posts: 5
MouseLook for Mobile [SOLVED]
« on: October 28, 2020, 02:29:58 PM »
Hello

I need MouseLook for tuch system .
My problem: Desktop works great. But on my Android , although I can slide my finger around to look around, every time my finger first touches the screen, my camera seems to pop to a random direction
Quote

      public override void OnUpdate()
      {
           
               if (Input.GetMouseButtonDown(0))
       return;

                DoMouseLook();
           
        }

      void DoMouseLook()
      {
         var go = Fsm.GetOwnerDefaultTarget(gameObject);
         if (go == null)
         {
            return;
         }

         var transform = go.transform;

         switch (axes)
         {
            case RotationAxes.MouseXAndY:
               
               transform.localEulerAngles = new Vector3(GetYRotation(), GetXRotation(), 0);
               break;
            
            case RotationAxes.MouseX:

               transform.localEulerAngles = new Vector3(transform.localEulerAngles.x, GetXRotation(), 0);
               break;

            case RotationAxes.MouseY:

               transform.localEulerAngles = new Vector3(-GetYRotation(), transform.localEulerAngles.y, 0);
               break;
         }
      }

      float GetXRotation()
      {
         rotationX += Input.GetAxis("Mouse X") * sensitivityX.Value;
         rotationX = ClampAngle(rotationX, minimumX, maximumX);
         return rotationX;
      }

      float GetYRotation()
      {
         rotationY += Input.GetAxis("Mouse Y") * sensitivityY.Value;
         rotationY = ClampAngle(rotationY, minimumY, maximumY);
         return rotationY;
      }

      // Clamp function that respects IsNone
      static float ClampAngle(float angle, FsmFloat min, FsmFloat max)
      {
         if (!min.IsNone && angle < min.Value)
         {
            angle = min.Value;
         }

         if (!max.IsNone && angle > max.Value)
         {
            angle = max.Value;
         }
         
         return angle;
      }
« Last Edit: November 02, 2020, 11:40:14 AM by Araz5 »

Araz5

  • Playmaker Newbie
  • *
  • Posts: 5
Re: MouseLook for Mobile [SOLVED]
« Reply #1 on: November 02, 2020, 11:41:12 AM »
watching this video for solving :