当前位置: 首页 > news >正文

网站建设与运营公司的市场开发方案做电影网站的资源从哪里换

网站建设与运营公司的市场开发方案,做电影网站的资源从哪里换,马鞍山网站建设公,官网怎么进入为什么要使用非固定摇杆 许多同学在开发摇杆功能时,会将摇杆固定在屏幕左下某一位置,不会让其随着大拇指触摸点改变,而且玩家只有按在了摇杆上才能移动人物(触摸监听事件在摇杆精灵上)。然而,不同玩家的大拇指长度不同…

为什么要使用非固定摇杆

许多同学在开发摇杆功能时,会将摇杆固定在屏幕左下某一位置,不会让其随着大拇指触摸点改变,而且玩家只有按在了摇杆上才能移动人物(触摸监听事件在摇杆精灵上)。然而,不同玩家的大拇指长度不同,使用这种固定摇杆可能会导致部分玩家无法快速按到摇杆,从而影响了游戏操作性。

非固定摇杆不需要玩家去寻找摇杆位置,玩家的大拇指只要在屏幕左下区域按下,摇杆就会自动被设置到大拇指按下的位置(触摸监听事件在画布上),游戏操作性因此提升。

注:有关固定摇杆的具体实现原理可以前往查看笔者的这篇文章。
P.S. 上面的摇杆文章发布的时间是19年10月,时间过得好快。


运行效果和源码获取

非固定摇杆

Cocos Creator版本: 3.8.4
项目源码获取:搜索公号All Codes,公号后台发送"非固定摇杆"


实现原理

1: 在摇杆组件生效时记录摇杆的位置。

/* 记录摇杆最初位置 */
recordOriginalPos() {this.originalPos = new Vec3(this.node.position)
}

2: 在TOUCH_START事件函数中,判断玩家触摸点是否在屏幕左下区域,是的话将摇杆设置到触摸点位置,不是的话则直接返回。
在这里插入图片描述

onTouchStart(event: EventTouch) {// 获取触摸点坐标let loc = event.getUILocation()let pos = this.canvas.getComponent(UITransform).convertToNodeSpaceAR(new Vec3(loc.x, loc.y, 0))// 判断触摸点是否在画布左下区域// 不是的话直接返回,是的话设置摇杆底部面板位置if (pos.x > 0 || pos.y > 0) {return}this.node.setPosition(pos)this.isTouchAreaCorrect = true
}

3: 在TOUCH_MOVE事件函数中,更新摇杆中心按钮在摇杆底部面板上的位置。
在这里插入图片描述

onTouchMove(event: EventTouch) {if (!this.isTouchAreaCorrect) {return}// 在该事件中我们只需要设置摇杆中心按钮的位置let posDelta = event.getDelta()this.joystickBtn.setPosition(new Vec3(this.joystickBtn.position).add3f(posDelta.x, posDelta.y, 0))// 获取移动方向和旋转角度this.dir = new Vec3(this.joystickBtn.position.x, this.joystickBtn.position.y, 0).normalize()if (this.dir.y > 0) {this.angle =  Vec3.angle(this.dir, new Vec3(1, 0, 0)) * 180 / Math.PI}else {this.angle =  -Vec3.angle(this.dir, new Vec3(1, 0, 0)) * 180 / Math.PI}// 设置主角isMoving变量为truethis.playerComp.isMoving = true 
}

4: 在TOUCH_END和TOUCH_CANCEL事件函数中,重置相关变量并复原摇杆位置。摇杆底部面板回到在第1步中记录的位置,摇杆中心按钮回到摇杆底部面板中心位置。

onTouchEnd(event: EventTouch) {// 复原摇杆位置,重置相关变量this.node.setPosition(this.originalPos)this.joystickBtn.setPosition(Vec3.ZERO)this.playerComp.isMoving = falsethis.isTouchAreaCorrect = false
}onTouchCancel(event: EventTouch) {// 复原摇杆位置,重置相关变量this.node.setPosition(this.originalPos)this.joystickBtn.setPosition(Vec3.ZERO)this.playerComp.isMoving = falsethis.isTouchAreaCorrect = false
}

王者荣耀中的非固定摇杆
请添加图片描述

http://www.yayakq.cn/news/486000/

相关文章:

  • 网站建设需要什么能力哪里网站建设联系方式
  • 新浪门户网站是谁做的杭州婚恋网站建设
  • 网站建设多少钱怎么卖怎么创建网页超链接
  • 休闲度假村网站建设方案白沙网站建设的目标
  • 网站模版的优化公司购物网站备案
  • 做网站协调顺营销官方网站
  • 做网站 人工智能用vs做网站界面
  • 扁平风格网站模板百度竞价点击一次多少钱
  • 淘宝网站如何做虚拟手机优化助手
  • 企业网站建设在国内现状官方网站的优势
  • 如何制作网站?网站移动化建设方案
  • 站规划在网站建设中的作用html5开发网站
  • 保定 营销型网站建设建设部网站查询
  • 休闲食品网站建设策划书成立公司需要什么材料
  • 山东网站营销学it什么培训机构好
  • 网页qq登录记录网站wordpress 死链提交
  • 我做中医培训去哪个网站找学员个人网站子域名设置
  • 百度权重4网站值多少钱做网站要什么颜色模式
  • 那个公司做的外贸网站好php笔记网站
  • 网站开发角色分类购物网站开发的目的意义
  • 网站建设分析书引言网络服务包括
  • 网站右侧浮动窗口一级域名做网站
  • 工信部怎么查网站备案太原建站模板厂家
  • 上海的网站设计公司价格瑞幸网络营销策划
  • 淘宝官方网站登录注册dede网站暂时关闭
  • 公司官网网站建设想法郑州网站建设哪家
  • 建立网站平台需要多少钱国外浏览器网站
  • 哈尔滨网站制作维护辽源商城网站建设
  • 做写手哪个网站好东莞凤岗网站建设制作
  • 提供服务器和网站建设wordpress自动转换地区