现在大多数游戏里面都是英雄或者角色属性的雷达图,来展示一个英雄的定位等直观信息。下图中是我们游戏里面的一个球员的属性雷达图和两个球员属性对比的雷达图。
一、雷达图的最终效果:
在这个demo中,我分别设置A、B、C、D四个快捷键来测试雷达图的展示效果,方便自己测试和美术看效果,A是随机生成雷达图属性值,B是从小到大生成雷达图,C是一个满属性雷达图,D是自己写死的一个数据展示一个定制数据的雷达图
二、雷达图功能拆解
从上面Demo视频中可以看出雷达图主要有6个环、11条维度线、11个最大属性点、以及属性数值的填充绘制。
1、顶点坐标的计算
首先要绘制上面的线和数据填充,就要计算出各个顶点的坐标,顶点坐标的计算可以按照下图的方式建立坐标系:
这要我们就可以通过熟悉中的三角函数来计算出各个顶点的坐标了
Vector2[]polygonVertex=newVector2[m_polygonCount + 1];
floatrad=2*Mathf.PI/m_polygonCount;
for(inti=0;i
{
floata=rad*i;
if(m_align==EAlign.Y_FORWARD){
a+=Mathf.PI/2.0f;