游戏开发学习笔记

用做留存笔记,供学习交流之用。
战争迷雾效果的实现,关键就在于对MeshRenderer组件的运用,启动或者关闭,决定实现敌方物体的可见与不可见。而可见不可见的条件是是否超出视野范围,是否被阻挡物阻挡。
首先确定己方物体的视野范围,要注意的是,自己设置的地块格子的长度,否则会在之后距离计算时出现问题。
确定好视野范围后,简单运用一个洪水算法,筛选出视野范围内符合条件的地块,剔除不符合的地块,比如地块上有障碍物之类的。
洪水算法会把符合条件的地块收集到一个List列表里,这时候我们只需要历遍这个列表。首先修改美术效果,就是让地块高亮显示,以表示该地块可见。然后时修改地块上属性

1表示可见,0表示不可见。

上图为大概思路实现,向上打出射线,按MeshNum更改物体MeshRenderer组件,
按实际需求更改。
补充,MeshNum也是显示地块是否可见美术表现的凭证

同上按实际需求更改。
额外注意,射线是不稳定的,千万要在输入射线结果的时候,做容错。