Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Unity3D标准摇杆

我看了一下雨松MOMO的摇杆(具体见 http://www.linuxidc.com/Linux/2012-04/59395.htm ),很好哦,但是我感觉不是太全面,而且只有八个方向(可能是角度设成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来表示物体朝向某个方向。你可以自己看看摇杆的位置变化,自己感觉一下。