我目前正在使用 Box2D 灯光库和 LibGDX 开发一款游戏。
目前一切都很好,但是,我在访问 ConeLight 的光线时遇到困难。
如果对象不在光线中,我希望停止渲染它们。有什么方法可以访问库正在转换的光线,以便我可以确定物体是否挡住了光线?
通过 JavaDocs 和互联网进行快速搜索没有得到任何结果。也许通过反射(reflection)?
像 light.setContactFiltering()
这样的方法是存在的,但是它们只能阻止某些对象受到光线的影响。
我不希望自己进行光线转换来检测对象,而是尝试访问现有的光线转换,以尝试节省计算能力。
谢谢您的帮助!
最佳答案
您可以从光源沿光的方向使用 Box2D RayCasting 并查看它击中的内容。如果情况合适,您还可以使用 libGDX 相机中内置的 Frustum 剔除
关于java - 访问 Box2D 灯光转换的光线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43858837/