easytouch的使用
对于移动平台上的RPG类的游戏,我们常用虚拟摇杆来控制人物角色的行走和一些行为,相信我们对它并不陌生,之前尝试了EasyTouch2.5,发现并没有最新版的3.1好用,2.5版本的对于自适应没有做的很好,而最新版的已经解决了这一问题。当然unity也自带了摇杆Joystick,用起来也简单,但存在不少局限,不会满足普通mmo游戏的需求,比如指定显示区域或者是更改一些素材等等,而这些EasyTouch插件都已经帮你实现,不得不佩服插件的原作者,能做出这么炫酷好用的插件,当然这估计是老外开发的,关于插件的下载,你可以在AssetStore上购买,当然也可以使用free版。
我这里也提供一个3.1版本的插件下载地址:http://download.csdn.net/detail/s10141303/6962919
一、效果图
感觉很酷有木有!接下来就看一下创建的过程吧!
二、操作步骤
1.官方文档上的步骤
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
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.
5-Create a new C# script MyFirstTouch
6-Add these methods
- // Subscribe to events
- void OnEnable(){
- EasyTouch.On_TouchStart += On_TouchStart;
- }
- // Unsubscribe
- void OnDisable(){
- EasyTouch.On_TouchStart -= On_TouchStart;
- }
- // Unsubscribe
- void OnDestroy(){
- EasyTouch.On_TouchStart -= On_TouchStart;
- }
- // Touch start event
- public void On_TouchStart(Gesture gesture){
- Debug.Log( "Touch in " + gesture.position);
- }
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.根据官方的这些提示,自己来做一个属于自己的人物遥感控制
- using UnityEngine;
- using System.Collections;
- public class MoveController : MonoBehaviour {
- void OnEnable()
- {
- EasyJoystick.On_JoystickMove += OnJoystickMove;
- EasyJoystick.On_JoystickMoveEnd += OnJoystickMoveEnd;
- }
- //移动摇杆结束
- void OnJoystickMoveEnd(MovingJoystick move)
- {
- //停止时,角色恢复idle
- if (move.joystickName == "MoveJoystick")
- {
- animation.CrossFade("idle");
- }
- }
- //移动摇杆中
- void OnJoystickMove(MovingJoystick move)
- {
- if (move.joystickName != "MoveJoystick")
- {
- return;
- }
- //获取摇杆中心偏移的坐标
- float joyPositionX = move.joystickAxis.x;
- float joyPositionY = move.joystickAxis.y;
- if (joyPositionY != 0 || joyPositionX != 0)
- {
- //设置角色的朝向(朝向当前坐标+摇杆偏移量)
- transform.LookAt(new Vector3(transform.position.x + joyPositionX, transform.position.y, transform.position.z + joyPositionY));
- //移动玩家的位置(按朝向位置移动)
- transform.Translate(Vector3.forward * Time.deltaTime * 5);
- //播放奔跑动画
- animation.CrossFade("run");
- }
- }
- }
6.效果图
==================== 迂者 丁小未 CSDN博客专栏=================
MyBlog:http://blog.csdn.net/dingxiaowei2013 MyQQ:1213250243
Unity QQ群:858550 cocos2dx QQ群:280818155
====================== 相互学习,共同进步 ===================
easytouch的使用的更多相关文章
- EasyTouch绑定事件在电脑上点击有效Android上无效的解决方法
最近做一个RPG类的游戏发现使用EasyTouch虚拟摇杆插件在电脑上点击有效Android上无效,查找资料发现是Easy Joystick中的一个属性interaction type要设置成 Dir ...
- [Unity3d插件]EasyTouch的初步使用
对于移动平台上的RPG类的游戏,我们常用虚拟摇杆来控制人物角色的行走和一些行为,相信我们对它并不陌生,之前尝试了EasyTouch2.5,发现并没有最新版的3.1好用,2.5版本的对于自适应没有做的很 ...
- [Unity3D]Unity3D游戏开发之使用EasyTouch虚拟摇杆控制人物移动
大家好,欢迎大家关注我的博客,我是秦元培,我的博客地址是blog.csdn.net/qinyuanpei.今天呢,我们来一起学习在Unity3D中使用EasyTouch虚拟摇杆来控制人物移动.虽然Un ...
- EasyTouch 3.1中文翻译
Unity3D的Easy Touch 的手册最近寻找中文版本,google无果,自己动手.目前暂时只有c# ,javascript原理是一样的. 一.Quick Start 1-Import Easy ...
- EasyTouch和NGUI的使用心得
今天来写一写Unity3D中两个比较常用插件:EasyTouch和NGUI的学习心得.我用的版本分别是EasyTouch 3.1.1和NGUI 3.6.0,下面也是对这两个版本的学习心得. 1. Ea ...
- EasyTouch中虚拟摇杆的使用EasyJoystick
unity3d自带的虚拟摇杆显然没有EasyTouch好用 首先下载这个插件 http://pan.baidu.com/s/1hqJAbTa 下载完成后.导入到unity,可以看看里面的案例
- Unity EasyTouch官方案例学习
一.代码检测手势事件 1. EasyTouch4.x 写法 首先要手动在 Hierarchy 窗口添加 EasyTouch 物体,以触摸(Touch)手势为例,代码如下: using UnityEng ...
- EasyTouch中多种QuickGesture手势检测
EasyTouch中QuickGesture的用法 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Qu ...
- EasyTouch基本用法
EasyTouch基本用法 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 hierarchy (层次面 ...
- (转)[unity3d]easytouch的使用
对于移动平台上的RPG类的游戏,我们常用虚拟摇杆来控制人物角色的行走和一些行为,相信我们对它并不陌生,之前尝试了EasyTouch2.5,发现并没有最新版的3.1好用,2.5版本的对于自适应没有做的很 ...
随机推荐
- HDOJ 1159 Common Subsequence【DP】
HDOJ 1159 Common Subsequence[DP] Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ...
- HDU4628
/*状态转移f[i]=min(f[i],f[j]+f[i^j]); 就是j状态+i^j状态=i状态,f[i]记录的是从i删除1要的最小步数*/ #include<string.h> #in ...
- 【Java】Swing+IO流实现一个简单的文件加密程序(较完整版)
留着参考 beans package com.my.bean; import java.io.Serializable; public class EncryptedFile implements S ...
- spring配置中classpath: 与classpath*:的区别
classpath和classpath*区别: classpath:只会到你的class路径中查找找文件. classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找 ...
- 运行报警告UserWarning: Unknown extension is not supported and will be removed warn(msg)
运行python代码,出现如下警告: C:\Users\niko\PycharmProjects\python_new\venv\lib\site-packages\openpyxl\reader\w ...
- ssi include返回404页面
项目中index.html中包含<!--#include virtual="/commonfrag/djdzkan/recomm_www_info.inc" --> ...
- 20145120黄玄曦《网络对抗》Web安全基础实践
20145120黄玄曦<网络对抗>Web安全基础实践 回答问题 (1)SQL注入攻击原理,如何防御 SQL注入原理简单地说大概是,通过构造特殊的SQL命令提交表单,让服务器执行构造的恶意S ...
- 《Python学习手册》(四)
List and Dictionary 列表: 任意对象的有序集合 通过偏移读取 可变.异构.任意嵌套 常用方法: L.append(object) L.extend(iterable) L.inse ...
- AppLocker Pro FAQ
How to use AppLocker Pro: 1. Start AppLocker Pro, create a password.2. In the main console, click &q ...
- [nowcoder]最长区间
链接:https://www.nowcoder.com/acm/contest/158/B 求最长连续严格递增序列 线段树模板题,码力弱的一匹调了半天.. 代码: #include<iostre ...