我正在进行模拟,目前正在增加障碍物。现在障碍物的目的是让其他物体可以隐藏在其他人看不见的地方。但是我尝试要弄清楚什么是最好的方法,以检查是否针对代理是在障碍物后面,因此不能seen.Here是一个例子:检查物体是否被障碍物遮挡
黑代理不应该看到的代理红色,但是应该能够看到黄色的代理人(绿色线条表示黑色代理人的视野)
目前,我的视野只计算代理所在的角度,并检查角度是否在视野范围内。 我在寻找一些游戏开发人员使用的解决方案,并且正在阅读ray-casting,但它看起来像计算量非常大,对我来说不是一个好的解决方案,因为我将拥有数百个代理投射射线。
我在想的另一件事是检查障碍物占据的角度(例如从90到120度),如果代理人处于相同的角度范围内,则意味着障碍物阻挡了障碍物(如果这就说得通了)。
我在这里发帖是为了询问是否有人能够指导我一个简单而有效的解决方案,因为我对这类游戏开发相关的东西很新。
在此先感谢!
这是为什么与java有关? – Swapnil
对不起,我制作的程序是用java编写的。 – Tohmas