我正在制作像游戏这样的简单网格(网格为矩阵128x128),矩阵填充有0和1(1个子弹可以通过,0个子弹无法通过不能再继续行进,而且我的子弹范围为32个单元格)。
例如,我站在位置(32,89)。有人可以建议我任何有效的算法来计算所有可射击场吗? (我知道可以通过简单地计算范围内的每个归档来进行简单计算,但是我想知道是否有更好的主意)
最佳答案
有一种更有效的算法。埃里克·利珀特(Eric Lippert)就网格游戏中的阴影投射撰写了出色的系列文章。如果我理解正确,那么这正是您所需要的。
我正在制作像游戏这样的简单网格(网格为矩阵128x128),矩阵填充有0和1(1个子弹可以通过,0个子弹无法通过不能再继续行进,而且我的子弹范围为32个单元格)。
例如,我站在位置(32,89)。有人可以建议我任何有效的算法来计算所有可射击场吗? (我知道可以通过简单地计算范围内的每个归档来进行简单计算,但是我想知道是否有更好的主意)
最佳答案
有一种更有效的算法。埃里克·利珀特(Eric Lippert)就网格游戏中的阴影投射撰写了出色的系列文章。如果我理解正确,那么这正是您所需要的。