介绍
由于听说unity自带的虚拟摇杆非常不好用,所以本博主选择使用easy touch里面的摇杆控件,亲测easy touch里面的joystick确实比较好用。我的unity版本是5.5的,而easy touch是4.3的,所有由于版本不同以及每个人的视图位置不同,操作可能存在差异。
下载
unity可以去官网下载,这里贴上easy touch 4.3的下载资源和一个摇杆样式:
摇杆介绍
如何创建摇杆
首先导入easy touch包,如下图所示,找到你的easy touch就行了
然后创建一个joystick,这时候一个很丑的红色摇杆就会出现在你的场景里了
![]()
设置摇杆样式
首先导入下载的摇杆样式资源包然后选中其中一个样式,将他的纹理类型(Texture Type)改为sprite(2D and UI),这样之后你的joystick才能使用这个纹理![]()
这时候就可以添加纹理了,选中你创建的joystick,在inspector视图中的sprite内选择你要的纹理样式![]()
不出意外的话,这时候你的摇杆就会变的比较酷炫了。
添加事件
接下来我们要给摇杆添加一些功能事件。选中joystick, inspector里面有很多的事件,这里我们用Down Events
点击"+"按钮就可以添加一个事件,这时候我们需要添加一个操纵的物体以及响应事件我们在这里添加一个方块
如果方块没有出现在场景中,可能是位置和大小的关系,也有可能是方块透明或者摄像机位置不对,需要自行调整,这里不详细介绍了。有了方块之后,我们还需要一个脚本来响应摇杆的事件。在这里我们创建了一个C#脚本。如下图所示,右击Assets文件夹创建
打开C# Script,我们给方块写一个简单的脚本。这里我们添加了一个TouchUp函数,这个函数的功能是让这个物体在Y轴方向移动。using System.Collections; using System.Collections.Generic; using UnityEngine; public class RightJoystick1 : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void TouchUp() { transform.Translate(new Vector3(0, -20 * Time.deltaTime, 0)); } }
创建完脚本后,我们需要将这个脚本附在方块上,这样脚本所执行的操作才能在对象上实现。直接拖拽你的脚本文件到cube对象上就行了。点击cube对象,如果出现了脚本就说明成功了,如下图所示,Right Joystick 1(sprite)就是我的脚本文件。
好了,回到我们为joystick添加事件的地方点击Runtime下面的按钮,选择我们的方块Cube
接着点击Runtime右边的按钮,选择我们要调用的方块函数![]()
perfect
接下来只要运行代码,向上移动摇杆,你的方块就为移动了,是不是很简单。简直”破费!“。