我正在构建一个2D游戏,其中玩家只能看到未被其他物体阻挡的东西。考虑一下它现在的样子:
我为此实现了光线跟踪算法,它似乎工作正常(我已经减少了演示的边界,使所有边缘都可见)。
正如你所看到的,较亮的区域是由一堆三角形构成的,每个三角形都有一个共同点在玩家的位置。每两个邻居都有两个共同点。
然而我愿意计算外部的边界,用多边形的部分填充黑色三角形"隐藏"什么玩家看不到。
这样做的一种方法是"掩盖"带有当前多边形的黑色矩形,但我担心它效率很低。
有关实现此目的的有效算法的任何想法?
谢谢!