文章转自:https://www.dadadatou.com/archives/strt2.html

我们需要实现的目标是一个控制人物移动的虚拟摇杆
第一步:我们需要获取我们摇杆的移动位置,再将获取到坐标转换成节点坐标。所以这里我们要开启事件监听如图:

通过事件监听我们就能获取到我们想要的值,如图:

第二步:也是最关键关键的一步,我们需要做到移动stick,不能超出stckBg,并且将值转换后传递给需要控制的人物,因此我们需要定义移动的最大半径以及他的方向

通过图片我们知道,我们实际移动的坐标是(x2,y2),但是我们规定了最多不能超超出半径(x1,y1),通过图片我们明显的知道圈内的三角形和圈外的三角形是相似的,由此我们就能求出(x1,y1)。同时我们将(x2,y2)的坐标进行归一,具体代码如图所示

第三步:将我们计算出来了值传递给需要控制的人物。至于为什么angle需要减去90度可以去看我的上一篇文章

最后附上效果图和源码图




Cocos Creator 详解虚拟摇杆相关推荐

  1. Cocos creator -引擎解构

    Cocos creator -引擎结构 在长期的开发中,发现cc对大型的手游加载项目的速度很慢,于是我产生了一种想法,想把 cocos creator移植在Linux上做开发,编译时在Windows. ...

  2. VSFTP配置详解+虚拟用户的支持

         FTP 搭建 第一部分:理论 一. FTP服务器的基本原理 1. 基本概念:ftp是文件传输协议,(file transport portocol) 2. 数据传输模式:主动模式和被动模式  ...

  3. diff算法_详解虚拟 DOM 与 DOM-Diff 算法,面试官放码过来!

    Keep Moving 时至今日,前端对于知识的考量是越来越有水平了,逼格高大上了 各类框架大家已经可以说无论是工作还是日常中都已经或多或少的使用过了 曾经听说很多人被问到过虚拟DOM和DOM-dif ...

  4. [精]Oracle VPD详解(虚拟专用数据库)

    所谓虚拟专用数据库(VPD)指的是,通过在数据库里进行配置,从而让不同的用户只能查看某 个表里的部分数据.VPD分为以下两个级别. 行级别:在该级别下,可以控制某些用户只能查看到某些数据行.比如,对于 ...

  5. 详解虚拟产品落地实操

    欢迎你来到这个网页,请你耐心看完,相信一定能给你带来意外的惊喜! 这个项目,几乎是无本生意,也特别适合小白来操作,简单的说就是卖虚拟产品. 比如你卖的可以是教程,软件资料,素材等等,这些我们统称为虚拟 ...

  6. Linux Apache服务详解——虚拟网站主机功能实战

    今天我们继续给大家介绍Linux相关内容,本文主要内容是Apache服务虚拟网站主机功能实战. 一.虚拟主机功能简介 Apache服务默认支持虚拟主机功能,所谓虚拟主机,就是Apache将一台服务器的 ...

  7. 详解 30 道 Vue 面试题(建议收藏)

    作者:我是你的超级英雄 https://juejin.im/post/5d59f2a451882549be53b170 前言 本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性.框架的原理以 ...

  8. 详解 30 道 Vue 面试题

    作者:我是你的超级英雄 https://juejin.im/post/5d59f2a451882549be53b170 前言 本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性.框架的原理以 ...

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

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

  10. Cocos Creator 预制体(Prefab) - 生命周期详解

    说明 本文章适用于2.4.x版本的介绍,另外部分逻辑例如start或者enable的调用关系在编辑器或者其他运行环境下可能存在差异,建议大家自行去看源码! 创建 可通过拖拉场景内节点到文件目录上生成一 ...

最新文章

  1. 【FFmpeg】结构体详解(二):AVStream、AVPacket、AVOutputFormat
  2. Xcode6中添加pch文件
  3. java: http请求和响应
  4. 程序员开发利器:源代码管理的十条建议
  5. 一个简单的 Hello world! 例子使用 boost::mpi::group 和 boost::mpi::broadcast()
  6. 使用RxNetty访问Meetup的流API
  7. oracle数据库用户创建_权限分配_以及导入_导出数据,oracle数据库用户创建、权限分配,以及导入,导出数据...
  8. SQL Server中的文件流
  9. vb2008 获取mac地址_华为 荣耀路由Pro 设置MAC地址克隆的方法?华为荣耀路由器怎么设置...
  10. 常用的自动化运维工具
  11. 为什么老师说尽量别用wps(图文详解)
  12. GET请求参数中文乱码的解决办法
  13. 从零开始搭建ROS智能小车@sp头子
  14. uiautomatorviewer报错解决
  15. 香港科大三项研究登榜2020年度香港十大创科新闻
  16. 一个吊炸天的登录页面
  17. AVS3中的AMVR和EMVR
  18. java通过jstack命令查询日志深入理解
  19. $Linux vi/vim编辑器常用命令与用法总结
  20. python阿凡提与国王下棋_阿基米德与国王下棋的故事

热门文章

  1. 【JAVA】-- 坦克大战全部代码
  2. wordpress网站提示“建立数据库连接时出错”
  3. 网易云音乐转码MP3
  4. sublime开发apicloud项更新apploader解决
  5. 【神经网络】一文读懂LSTM神经网络
  6. 我不应该用计算机做题,超级计算器:能帮你做题的计算器,就是它了
  7. 谈ISO9000-3内容及其与CMM关系
  8. C#测绘兰勃特墨卡托投影
  9. 别再装纯说不懂BT种子了
  10. 2021年安全生产模拟考试(全国特种作业操作证电工作业-电力电缆模拟考试题库二)安考星