在Unity C中从鼠标切换控件#

问题描述:

我正在尝试创建一个跟随滑动方向的旋转轮。目前,它在鼠标控制方面效果很好,但是我没能使这个脚本在触摸控制下工作。任何想法如何做到这一点?在Unity C中从鼠标切换控件#

脚本:

void Update() 
{ 
    if (Input.GetMouseButtonDown(0)) 
    { 
     f_difX = 0.0f; 
    } 
    else if (Input.GetMouseButton(0)) 
    { 
     f_difX = Mathf.Abs(f_lastX - Input.GetAxis ("Mouse X")); 

     if (f_lastX < Input.GetAxis ("Mouse X")) 
     { 
      i_direction = -1; 
      transform.Rotate(Vector3.up, -f_difX); 
     } 

     if (f_lastX > Input.GetAxis ("Mouse X")) 
     { 
      i_direction = 1; 
      transform.Rotate(Vector3.up, f_difX); 
     } 

     f_lastX = -Input.GetAxis ("Mouse X"); 
    } 
    else 
    { 
     if (f_difX > 0.5f) f_difX -= 0.05f; 
     if (f_difX < 0.5f) f_difX += 0.05f; 

     transform.Rotate(Vector3.up, f_difX * i_direction); 
    } 
} 

感谢。

看看这个帖子:http://answers.unity3d.com/questions/504707/replace-input-get-axis-horizontal-with-touch-input.html,第一个答案。

该链接提供了一个代码片段,显示如何使用计算的位置增量来替换Input.GetAxis。

+2

值得提供一个关于链接中答案的简要概述 - 尤其是因为它不是一个*答案,并且可能在将来的某个时间点更改/变得无法访问。 – Bilkokuya

+1

它工作。感谢您的答复。 –