Unity3D标准摇杆


我看了一下雨松MOMO的摇杆(具体见  ),很好哦,但是我感觉不是太全面,而且只有八个方向(可能是角度设成90度的原因吧),我下面有一个简单的方法来完善一下。基本操作和雨松MOMO的一样,就是那个控制脚本的代码变了。

我的代码如下:

  1. var touchKey_x=moveJoystick.position.x;  
  2.   
  3.   var touchKey_y=moveJoystick.position.y;  
  4.   
  5.    if(touchKey_x == 0&&touchKey_y==0){   
  6.   
  7.      if(!animation.isPlaying)          
  8.   
  9.       animation.Play("Take 001");//我里面的一个动画   
  10.      }  
  11.   
  12.    else{  
  13.   
  14.        animation.Play("walk");//行走的动画   
  15.        transform.LookAt(Vector3(touchKey_x*100000,transform.position.y,touchKey_y*100000));  
  16.   
  17.        transform.Translate(Vector3.forward*speed*Time.deltaTime);  
  18.   
  19.      }       
  20.   
  21.    }  


  重点:这个100000我本来想用Mathf.Infinity来表示的,但是结果不是我想要的,所以就用一个很大的值来表示了 

  注意:我用transform.LookAt来表示物体朝向某个方向。你可以自己看看摇杆的位置变化,自己感觉一下。

相关内容