1、首先导入EasyTouch插件
2、创建空物体,命名为EasyTouch,并将EasyTouch摇杆组件拖进空物体对象
3、再创建一个空物体,命名为new joystick,将EasyJoystick拖进空物体对象
4、设置摇杆的几个参数:
Joystick name设置为new joystick,或与上面第二个空物体命名一致
Interaction type设置为Event Notification
Enable X axis 和 Enable Y axis都设置为0.5,或者合适的数值
注意:EasyTouch的Broadcast messages不勾选
5、创建一个C#脚本,命名为Move.cs,编写下面代码,绑定到想要控制的物体即可用摇杆对该物体进行控制移动。
using UnityEngine;
using System.Collections;
public class Move : MonoBehaviour {
void OnEnable()
{
EasyJoystick.On_JoystickMove += OnJoystickMove;
}
// 此函数是摇杆移动中所要处理的事
void OnJoystickMove(MovingJoystick move)
{
if (move.joystickName != "new joystick") // 在这里的名字new joystick 就是上面所说的很重要的名字,在上面图片中joystickName的你修改了什么名字,这里就要写你修改的好的名字(不然脚本不起作用)。
{
return;
}
Debug.Log(move.joystickAxis.x);
float PositionX = move.joystickAxis.x; // 获取摇杆偏移摇杆中心的x坐标
float PositionY = move.joystickAxis.y; // 获取摇杆偏移摇杆中心的y坐标
if (PositionY != 0 || PositionX != 0)
{ // 设置控制角色或物体方块的朝向(当前坐标+摇杆偏移量)
transform.LookAt(new Vector3(transform.position.x + PositionX, transform.position.y, transform.position.z + PositionY));
// 移动角色或物体的位置(按其所朝向的位置移动)
transform.Translate(Vector3.forward * Time.deltaTime * 8);
}
}
}