【100个Cocos实例】王者荣耀中雷达图的揭秘

打团了,你人呢

引言

Cocos实现雷达图效果

游戏中我们经常可以看到雷达图的身影,用于直观地显示玩家的实力

例如王者的雷达图展现了玩家的输出能力、KDA数据、发育能力、团战能力和生存能力

又如三战的雷达图展示了玩家的攻城、势力、拆除、占领、战功、讨伐能力,被管理者用来识别地奴

本文将介绍一下在Cocos游戏开发中实现雷达图效果

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

什么是雷达图?

游戏截屏,王者荣耀的雷达图

在游戏中,雷达图是一种常用的图表类型,用于可视化多个数据维度之间的关系。雷达图通常呈圆形,类似于雷达屏幕上的扫描线每个数据维度表示为雷达图上的一个轴,而数据值则决定了在该轴上的位置。通过连接这些数据点,可以形成一个多边形,展示不同维度之间的关系

雷达图有什么用?

游戏截屏,王者荣耀的雷达图2

在游戏设计中,雷达图经常用于表示角色或物体的属性。例如,在角色扮演游戏中,一个角色可能有多个属性,如力量、敏捷、智力等。每个属性可以表示为雷达图上的一个轴,而该属性的值决定了在轴上的位置。通过连接这些点,就可以直观地看出角色属性的分布和平衡程度

总的来说,雷达图在游戏中是一种直观而有效的方式,帮助玩家理解和比较复杂的多维数据。

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

雷达图效果实例

接下来我们一步一步来实现雷达图效果。

1.环境

引擎版本:Cocos Creator 3.8.1

编程语言:TypeScript

2.资源准备

新建一个2D项目

你项目真多

本期全程用Graphics画线,结构简单。

3.编写代码

首先新建一个组件RadarChart,其中@executeInEditMode允许继承自 ComponentCCClass 在编辑器里执行。

import {
    _decorator, Color, Component, Graphics, Node } from 'cc';
const {
    ccclass, property, executeInEditMode } = _decorator;
@ccclass('RadarChart')
@executeInEditMode
export class RadarChart extends Component {
   

}

然后我们开始绘制在没有数据的情况下,4个从大到小的五边形框。其中关键的内容如下:

  • 通过lineWidth设置线条的宽度。
  • 通过strokeColor设置线条(画笔)的颜色(包括透明度)。
  • 通过stroke绘制线条。
  • 通过moveTo移动点(笔)。
  • 通过lineTo画线。
  • 通过radius * Math.sin(angle)计算五边形顶点的x坐标。
  • 通过radius * Math.cos(angle)计算五边形顶点的y坐标。

代码如下:

// 获取当前节点的 graphics 组件
  • 15
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亿元程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值