【100个Cocos实例】东皇太一的技能环绕效果

引言

Cocos中物体围绕物体做圆周运动。

不管是2D 还是3D 游戏,旋转 是游戏中常见的操作之一,它可以用来改变 游戏对象的方向、角度或者位置,从而创造出更加生动和有趣的游戏体验。

本文将介绍一下如何实现王者荣耀中东皇太一的技能环绕效果

本文源码和源工程在文末获取,小伙伴们自行前往。

1.旋转的基本概念

在游戏中,旋转是指围绕某个中心点或轴心旋转游戏对象

旋转通常包括两个重要的概念:角度(Rotation)和轴(Axis)角度 决定了旋转的幅度 ,而 定义了旋转的方向

话不多说,一起来做个实例。

2.物体环绕物体

接下来我们一步一步来实现王者荣耀中东皇太一的技能环绕效果。

1.环境

引擎版本:Cocos Creator 3.8.1

编程语言:TypeScript

2.资源准备

首先给小鸡 的中心加一个target节点,作为被环绕的中心。

然后创建一个CubeCreator生成器和一个Cube预制挂载。

CubeCreator生成器挂载CubeCreator脚本。

Cube预制挂载RotateAroundObject脚本。

3.CubeCreator

首先定义CubeCreator组件,生成用于演示用的可被拾取的砖块。

首先通过预制创建4x4个cube,并且通过材质球material.setProperty('mainColor')去修改他们的颜色,颜色随机 ,加到cubes数组进行管理。

然后监听一下键盘事件,简单用空格键将砖块打出去。

4.RotateAroundObject

首先定义一个RotateAroundObject组件,声明一些物体环绕物体 需要的一些基本属性,包括

  • 环绕目标object
  • 公转半径orbitRadius
  • 公转速度rotationSpeedT
  • 倾角inclination
  • 其中倾角通过随机Math.random()产生,形成不同的环绕方向。

然后update中实现一下物体物体环绕效果。其中需要用到数学知识球坐标系 以及球坐标转换

获取目标的世界坐标 ,通过球坐标公式 计算出并更新设置实际坐标。

每帧增加角度,实现动态效果。

拾取效果 ,当小鸡和砖块的距离小于0.5时,进行拾取并环绕。

距离公式

当按下空格键时,把砖块打出去

  • 首先设置砖块的朝向和小鸡一致。
  • 然后简单添加一个RigidBody组件用于运动。
  • 设置rigidBody.useGravity = false取消重力。
  • 最后通过rigidBody.applyForce产生动力。

5.结果演示

结语

在哪里 可以看到如此清晰的思路,快跟上我的节奏!关注我 ,和我一起了解 游戏行业最新动态,学习游戏开发技巧。

我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

AD:笔者线上的小游戏《贪吃蛇掌机经典》《重力迷宫球》《填色之旅》大家可以自行点击搜索体验。

实不相瞒,想要个在看 !请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐专栏:

你知道王者荣耀是怎么实现技能范围指示器的吗?

8年主程手把手打造Cocos独立游戏开发框架

和8年游戏主程一起学习设计模式

从零开始开发贪吃蛇小游戏到上线系列

本文源码和源工程 可通过发送私信RotationDemo获取

相关推荐
倔强的石头10634 分钟前
【Linux指南】动静态库系列(七):符号表与重定位:链接器如何把函数调用接起来
linux·前端·javascript
a1117762 小时前
3D 脑图谱 / Bilingual 3D Brain Atlas 项目
前端
T1mzhou2 小时前
ARM64 Linux 6.10内核启动流程2-rootfs 怎么挂上
linux·服务器·前端
小小尚@3 小时前
WebGIS/ECharts 地图开发|MapLand 在线行政区划边界一键下载 GeoJSON 工具
前端·javascript·echarts
默_笙3 小时前
🚍 一条 Todo 的奇幻漂流:TypeScript 全栈类型安全的"护照检查"
前端·javascript
计算机魔术师4 小时前
NVIDIA 以 129.3 亿美元收购 Hugging Face
前端
平头哥技术团队4 小时前
Day 01 | 用 HTML 写第一个网页:双击就能在浏览器打开
前端
计算机魔术师5 小时前
两年翻45倍!英伟达靠买买买建成千亿投资帝国
前端
paopaokaka_luck5 小时前
基于springboot3+vue3的精准扶贫管理系统(AI 问答、ECharts 图形化分析)
前端·人工智能·echarts
l1m0_5 小时前
智能电动自行车管理后台实战:AI生成页面与React组件化技巧
前端·react.js·ui·ai·设计