[Unity3d插件]EasyTouch简单用法

对于移动平台上的RPG类的游戏,我们常用虚拟摇杆来控制人物角色的行走和一些行为,相信我们对它并不陌生,之前尝试了EasyTouch2.5,发现并没有最新版的3.1好用,2.5版本的对于自适应没有做的很好,而最新版的已经解决了这一问题。当然unity也自带了摇杆Joystick,用起来也简单,但存在不少局限,不会满足普通mmo游戏的需求,比如指定显示区域或者是更改一些素材等等,而这些EasyTouch插件都已经帮你实现,不得不佩服插件的原作者,能做出这么炫酷好用的插件,当然这估计是老外开发的,关于插件的下载,你可以在AssetStore上购买,当然也可以使用free版。

我这里也提供一个3.1版本的插件下载地址:http://download.csdn.net/detail/s10141303/6962919

一、效果图

[Unity3d插件]EasyTouch简单用法_第1张图片

[Unity3d插件]EasyTouch简单用法_第2张图片

感觉很酷有木有!接下来就看一下创建的过程吧!

二、操作步骤

1.官方文档上的步骤

Quick Start (C#)

1-Import EasyTouch Package.
2-Create an empty gameObject, and name it EasyTouch.(You can choose another name)
Step 1 & 2 can be replace by the option menu

[Unity3d插件]EasyTouch简单用法_第3张图片
3-Add the EasyTouch.cs script on the EasyTouch gameObject that you just created. 
4-Select the EasyTouch gameobject, and verifies that Broadcast messages is set to FALSE in the inspector.

[Unity3d插件]EasyTouch简单用法_第4张图片
5-Create a new C# script MyFirstTouch
6-Add these methods

[csharp] view plaincopyprint?在CODE上查看代码片

 

  1. // Subscribe to events  

  2. void OnEnable(){  

  3. EasyTouch.On_TouchStart += On_TouchStart;  

  4. }  

  5. // Unsubscribe  

  6. void OnDisable(){  

  7. EasyTouch.On_TouchStart -= On_TouchStart;  

  8. }  

  9. // Unsubscribe  

  10. void OnDestroy(){  

  11. EasyTouch.On_TouchStart -= On_TouchStart;  

  12. }  

  13. // Touch start event  

  14. public void On_TouchStart(Gesture gesture){  

  15. Debug.Log( "Touch in " + gesture.position);  

  16. }  

7-Create an empty gameObject, and name it Receiver.
8- Add MyFirstTouch script to the gameObject Receiver.
9- Run it in editor, and click on the screen

 

2.翻译一下以上的步骤

  1.import“EasyTouch”资源包

        2.创建空物体,命名为EasyTouch(当然你也可以改成其他名字)

        3.添加EasyTouch.cs脚本在刚刚创建的空物体(EasyTouch)上

4.选择改物体但不要将BroadcastMessages勾选

5.创建一个新的C#脚本,命名MyFirstTouch

6.添加这些方法

7.再创建一个空物体,命名为Receiver

8.将MyFirstTouch脚本添加到空物体Receiver上

9.运行并且点击遥感,会发现控制台打印了当前按下的坐标

3.根据官方的这些提示,自己来做一个属于自己的人物遥感控制

   1.导入EasyTouch3资源包

2.做好前期准备,包括人物模型、地形的创建

3.添加JoyStick实例:Hedgehog Team->Easy Touch->Extensions->Add a new Joystick。此时就会在左下角创建了虚拟遥感的实例。

        4.设置遥感的相关参数

[Unity3d插件]EasyTouch简单用法_第5张图片

5.创建脚本MoveController.cs用来接收遥感事件控制角色的移动

[csharp] view plaincopyprint?在CODE上查看代码片

 

  1. using UnityEngine;  

  2. using System.Collections;  

  3.   

  4. public class MoveController : MonoBehaviour {  

  5.   

  6.     void OnEnable()  

  7.     {  

  8.         EasyJoystick.On_JoystickMove += OnJoystickMove;  

  9.         EasyJoystick.On_JoystickMoveEnd += OnJoystickMoveEnd;  

  10.     }  

  11.   

  12.   

  13.     //移动摇杆结束  

  14.     void OnJoystickMoveEnd(MovingJoystick move)  

  15.     {  

  16.         //停止时,角色恢复idle  

  17.         if (move.joystickName == "MoveJoystick")  

  18.         {  

  19.             animation.CrossFade("idle");  

  20.         }  

  21.     }  

  22.   

  23.   

  24.     //移动摇杆中  

  25.     void OnJoystickMove(MovingJoystick move)  

  26.     {  

  27.         if (move.joystickName != "MoveJoystick")  

  28.         {  

  29.             return;  

  30.         }  

  31.           

  32.         //获取摇杆中心偏移的坐标  

  33.         float joyPositionX = move.joystickAxis.x;  

  34.         float joyPositionY = move.joystickAxis.y;  

  35.   

  36.   

  37.         if (joyPositionY != 0 || joyPositionX != 0)  

  38.         {  

  39.             //设置角色的朝向(朝向当前坐标+摇杆偏移量)  

  40.            transform.LookAt(new Vector3(transform.position.x + joyPositionX, transform.position.y, transform.position.z + joyPositionY));  

  41.             //移动玩家的位置(按朝向位置移动)  

  42.             transform.Translate(Vector3.forward * Time.deltaTime * 5);  

  43.             //播放奔跑动画  

  44.             animation.CrossFade("run");  

  45.         }  

  46.     }  

  47. }  

几个函数的执行顺序:

[Unity3d插件]EasyTouch简单用法_第6张图片

6.效果图

[Unity3d插件]EasyTouch简单用法_第7张图片

 

7.创建点击按钮

点击HedgehogTeam->EasyTouch->Extensions->Create a new Button,会在屏幕右下角创建一个button

 

[Unity3d插件]EasyTouch简单用法_第8张图片

 

如何让有下角的按钮点击能做出我们想要的效果呢?

[Unity3d插件]EasyTouch简单用法_第9张图片

 

jump方法:

[Unity3d插件]EasyTouch简单用法_第10张图片

 

然后点击一下按钮,人物就会跳跃动作!

 

如需转载请注明出处:http://blog.csdn.net/dingxiaowei2013/article/details/19967041

 

==================== 迂者 丁小未 CSDN博客专栏=================

MyBlog:http://blog.csdn.net/dingxiaowei2013             MyQQ:1213250243

Unity QQ群:858550         cocos2dx QQ群:280818155

====================== 相互学习,共同进步 ===================


你可能感兴趣的:(EasyTouch使用,EasyTouch)