unity3d自带的虚拟摇杆显然没有EasyTouch好用

首先下载这个插件

http://pan.baidu.com/s/1hqJAbTa

下载完成后。导入到unity,可以看看里面的案例

找到这个可以自己看看效果

现在我们利用这个插件来做一个自己的虚拟摇杆

导入插件后。把EasyTouch导入到视图中,这里有C#和js两类。我选择C#

你会发现

右边的属性

一般默认就可以了

Enable EasyTouch:属性设置是否启用

接下来在项目中添加一个虚拟摇杆

Scene视图的左下角则多了一个摇杆

层次视图中也多了一个对象

来看看这个对象的一些主要属性

修改摇杆的名字。可以在代码中找到这个摇杆。

比如一个场景中有多个摇杆。可以通过摇杆判断是触发了那个

摇杆的位置设置。这个一看就知道。

摇杆的事件和贴图设置,

在场景中自己添加一个角色。给其添加脚本 MoveController.cs

using UnityEngine;
using System.Collections;/// <summary>
/// 用来接收遥感事件控制角色的移动
/// </summary>
public class MoveController : MonoBehaviour
{Animator animator;public float speed = 5;//移动速度void Awake(){animator = GetComponent<Animator>();}// Use this for initializationvoid Start(){}// Update is called once per framevoid Update(){}/// <summary>/// 脚本启用时触发 ,注册事件/// </summary>public void OnEnable(){EasyJoystick.On_JoystickMove += new EasyJoystick.JoystickMoveHandler(EasyJoystick_On_JoystickMove);EasyJoystick.On_JoystickMoveEnd += new EasyJoystick.JoystickMoveEndHandler(EasyJoystick_On_JoystickMoveEnd);}/// <summary>/// 移动摇杆结束/// </summary>/// <param name="move"></param>void EasyJoystick_On_JoystickMoveEnd(MovingJoystick move){//停止时,角色恢复idle//Movejoystick 当前移动的摇杆名称。if (move.joystickName == "Movejoystick"){animator.SetBool("Run", false);}}/// <summary>/// 摇杆移动中/// </summary>/// <param name="move"></param>void EasyJoystick_On_JoystickMove(MovingJoystick move){if (move.joystickName != "Movejoystick"){return;}//获取摇杆中心偏移坐标float joyPositionX = move.joystickAxis.x;float joyPositionY = move.joystickAxis.y;//开始移动if (joyPositionX != 0 || joyPositionY != 0){//设置角色的朝向 (朝向当前坐标+摇杆偏移量)//Vector3 targetPos = new Vector3(transform.position.x + joyPositionX, transform.position.y, transform.position.z + joyPositionY)//orVector3 targetPos = transform.position + new Vector3(joyPositionX, 0, joyPositionY) * Time.deltaTime * speed;transform.LookAt(targetPos);//玩家移动//transform.Translate(Vector3.forward * targetPos);//利用刚体移动
            rigidbody.MovePosition(targetPos);//播放奔跑动画animator.SetBool("Run", true);}}/*Button Interaction&Events* 中勾选use specific method* Down method name:按下执行一次* Press method name:按下一直执行* Up method name:按下弹起执行一次*//// <summary>/// 按下执行该事件,只执行一次/// Down method name/// </summary>void Attack(){//播放攻击动画//animator.SetBool("Attack", true);
    }/// <summary>/// 按下一直触发该事件/// Press method name/// </summary>void PressAttack(){animator.SetBool("Attack", true);}/// <summary>/// 触摸或者鼠标弹起 执行该事件 只执行一次/// Up method name/// </summary>void StopAttack(){animator.SetBool("Attack", false);}
}

然后再添加一个杀怪的按钮

此时右下角会显示

属性都很简单

可以参考:

http://blog.csdn.net/dingxiaowei2013/article/details/19967041

http://blog.csdn.net/qinyuanpei/article/details/26204177?utm_source=tuicool

EasyTouch中虚拟摇杆的使用EasyJoystick相关推荐

  1. EasyTouch 学习之——ETCJoystick 虚拟摇杆

    ETC Joystick 继承自 ETCBase类, 并且要实现 PointerEnterHandler  IDragHandler, IBeginDragHander IPointerDownHan ...

  2. Unity中实现虚拟摇杆

    一:效果演示 二:使用 --创建一个可操作的区域Joystick作为父物体,调整Joystick大小以控制可以操作的区域 --在可操作区域下创建摇杆背景Background --在摇杆背景下创建摇杆控 ...

  3. unity中的2D虚拟摇杆和3D虚拟摇杆

    源代码链接https://github.com/hiramtan/HiJoystick_unity 如何使用 可以从此链接下载最新的unity package: 完成功能 2D虚拟摇杆 3D虚拟摇杆 ...

  4. EasyTouch5 之 Joystick 虚拟摇杆

    一.EasyTouch 资源结构 EasyTouchBundle [插件的根目录] |-EasyTouch [插件核心,核心功能的实现,偏向底层] |-EasyTouchControls [插件控制器 ...

  5. Unity3d项目入门之虚拟摇杆

    Unity本身不提供摇杆的组件,开发者可以使用牛逼的EasyTouch插件或者应用NGUI实现相关的需求,下面本文通过Unity自身的UGUI属性,实现虚拟摇杆的功能. 主参考 <Unity:使 ...

  6. 《Cocos Creator游戏实战》虚拟摇杆实现

    虚拟摇杆实现 摇杆布局实现 摇杆功能实现 用摇杆控制主角 该功能已收录在Many Widgets插件中,使用Cocos Creator 3.x版本的小伙伴可以用该插件快速生成摇杆. 插件地址:http ...

  7. 360度虚拟摇杆控制机器人前进后退转弯(一)

    项目需求 最近做一个项目,要求使用虚拟摇杆控制机器人设备前进后退转弯,整个过程的思路不算复杂,写篇文章记录下大致思路 (1)黄色圆不动时候 小车速度为0 (2)拖动摇杆 拖动距离越大 小车速度越大 距 ...

  8. 自定义虚拟摇杆组件让你一劳永逸

    最近在研究虚拟摇杆实现方式的时候,发现网上的教程的实现方式可移植性并不是特别好,于是我决定自己实现一个虚拟摇杆组件,保存到自己的组件库,方便以后用到的时候直接使用(关注公众号后台回复「虚拟摇杆组件」可 ...

  9. 【四方向型】虚拟摇杆 C#代码部分(1)--基本参数与动画方法

    参数属性设置 控制器根直径为60,半径为30:总直径为214,半径为107. 根直径为60像素,半径即为30像素:虚拟摇杆总直径为214像素,半径为107像素.点击位置距离中心点的距离在30像素以内的 ...

最新文章

  1. OpenCV(基础补充)颜色空间HSV *args与**args(滑动条传参问题)
  2. AI一分钟|Uber撤裁100名无人车操作员;京东金融将融资130亿人民币
  3. Linux 进程必知必会
  4. win10重置此电脑_Windows 10更新导致“重置此电脑”失效 微软给出解决办法
  5. 【GPS信号】GPS信号的读取以及kalman滤波预测
  6. 增加数组下标_数组以及ArrayList源码解析
  7. 信用更正和贷方剩余数量
  8. dnf超时空漩涡副本路线流程图_DNF超时空漩涡机制
  9. 图像优化算法(HE、AHE、CLAHE)简单介绍
  10. 交换排序之冒泡排序(java实现)
  11. 人群与网络:网络与图论
  12. 免费自学编程的12个网站
  13. 基于京东家电商品知识图谱的自动问答系统(二) -- IDEA搭建开发环境
  14. C# WinForm开发系列 - ComboBox
  15. mysql数据库管理与开发pdf_深入浅出mysql数据库开发、优化与管理维护.pdf
  16. HTML5+app开发学习之IOS打包篇
  17. 线性代数之五:正交性
  18. 贝叶斯分类器matlab实现
  19. WiFi 802.11可调参数说明---分片阈值(fragmentation threshold)
  20. 微软晓晓朗读录音工具windows-文字转语音

热门文章

  1. STM32(GD32)串口通信ORE(overrun error)导致死机
  2. 微信小程序 uniapp 点击获取用户实时当前位置进行定位
  3. 2023桂林电子科技大学考研介绍
  4. 如何打造一个高品质的酒店品牌形象?VR全景营销是关键!
  5. linux 6 服务搭建,Linux CentOS6.8搭建sftp服务
  6. jvm内存与垃圾回收重点总结
  7. java eden s0 s1_不是吧!做了两年java还没弄懂JVM堆?进来看看你就明白了
  8. PostgreSQL 中文(汉字)数字转阿拉伯数字
  9. CUDA C 编程权威指南 Grossman 第6章 流和并发
  10. 渗透探测 (如何断开隔壁妹纸的无线网络)