可以完美套住地图文本!并自动调整大小!
动机
由于地图文本的大小和中心位置是随着玩家的位置及视角变化而变化的,所以它的指示器并不是很好做,终于在撸了半天之后搞出来并优化了性能,现在发布一个Demo版本,有需要的朋友可以研究下,然后应用于你自己的作品中。内置支持隔墙检测。
效果预览
当玩家的准星接近地图文本时,会显示一个光环
预览
这个光环会随着玩家接近或远离文本位置,而自动调整大小
预览
额外说明
由于地图文本所显示内容的底部就是地图文本的位置,所以需要去计算地图文本的中心位置来显示特效,但是这个中心位置目前是对应文字大小为4的情况的,所以如果你有需要使用不同的文字大小,请自己修改叉乘操作前的一个系数(默认为0.085)
此指示器仅适用于文本内容较少的情况,如果你需要更大的指示器,请自行对玩家变量Radius乘以一个合适的缩放系数
负载情况
12个玩家,10个地图文本的情况下,负载不会超过100,不建议应用于会出现大量地图文本的模式中
原理说明
因为懒得画图我就直接码字了
首先,地图文本的位置,在显示的时候恰好是在所显示内容的最底部。在显示地图文本的时候,会将地图文本渲染到与玩家视线垂直的平面上。根据这两个信息,可以简单地使用矢量加法计算出
圆心位置 = 文本位置 + 转换系数(得靠摸索) * 叉乘(地图矢量(右), 矢量(眼睛位置, 文本位置))
半径 = |矢量(圆心位置, 文本位置)|
有了这两个信息,就可以完成对地图文本的定位啦
评论
这里空空如也~