我看了一下雨松MOMO的摇杆(具体见 http://www.linuxidc.com/Linux/2012-04/59395.htm ),很好哦,但是我感觉不是太全面,而且只有八个方向(可能是角度设成90度的原因吧),我下面有一个简单的方法来完善一下。基本操作和雨松MOMO的一样,就是那个控制脚本的代码变了。我的代码如下:
- var touchKey_x=moveJoystick.position.x;
-
- var touchKey_y=moveJoystick.position.y;
-
- if(touchKey_x == 0&&touchKey_y==0){
-
- if(!animation.isPlaying)
-
- animation.Play("Take 001");//我里面的一个动画
- }
-
- else{
-
- animation.Play("walk");//行走的动画
- transform.LookAt(Vector3(touchKey_x*100000,transform.position.y,touchKey_y*100000));
-
- transform.Translate(Vector3.forward*speed*Time.deltaTime);
-
- }
-
- }
重点:这个100000我本来想用Mathf.Infinity来表示的,但是结果不是我想要的,所以就用一个很大的值来表示了 注意:我用transform.LookAt来表示物体朝向某个方向。你可以自己看看摇杆的位置变化,自己感觉一下。