定向灯

时间:2012-10-16 22:26:06

标签: ios cocos2d-iphone box2d-iphone

我正在研究需要定向灯的游戏创意(2D)。基本上我想添加可以移动的光源,光线与场景中的其他物体相互作用。

我现在正在做的是使用传感器(box2d)和ccDrawLine的一些测试,我可以实现类似于我想要的东西。基本上我从某个点发送了一堆传感器,并通过光线检测来检测碰撞,得到终点并在传感器上画线。

只是想获得一些意见,如果这是一个很好的方法,或者是其他更好的选择来构建这样的东西?

此外,我想知道如何在该区域(传感器区域)上产生光效,以提供更好的光效。有什么想法吗?

3 个答案:

答案 0 :(得分:1)

我可以想到你可以应用的一种很酷的效果。在可以看到光线的区域内放置一些粒子,就像火花一样闪耀并且非常缓慢地落下,就像这样picture

任何解决此问题的方法都需要使用碰撞检测,所以如果您拥有有限数量的box2d对象,那么您的确很不错。

当你有很多box2d对象时,我想到的其他方法是将屏幕渲染为仅有纯色的纹理(应该很快)并对生成的纹理执行光线跟踪以找到会受影响的像素通过光。这样你只能分辨率而不是box2d对象的数量。

答案 1 :(得分:0)

有关2D空间中动态和静态灯光的良好源代码here。 这是Ruby代码,但很容易理解,因此将它移植到Obj-C / Cocos2D / box2D应该不会很长。

我真的希望它会帮助你,因为它帮助了我。

答案 2 :(得分:0)

嗯,有趣的问题。 Cocos2D确实提供了一些相当灵活的掩蔽效果。您可以在物体上放置一个渐变蒙版,其位置取决于“光线”的位置,从而产生物体被光线着色的效果。