cocos2d,如何让b2World绘制我自己的数据?

时间:2011-07-12 09:44:29

标签: cocos2d-iphone draw box2d

我正在使用cocos2d开发适用于iOS的Box2d编辑器。

我把b2World包裹进了我自己的世界级。我想实现自己的绘图功能。由于我将绘制更高级别的类(Wall,Rope等),仅创建一个b2Draw子类并将其设置为世界的DebugDraw是不够的,但我还需要更改b2World { {1}}。

DrawDebugData继承我的World类并覆盖CCLayer方法是一个好主意吗?什么是更好的方法?

2 个答案:

答案 0 :(得分:0)

只需将CCSprite指针添加到b2Body userData即可将精灵附加到b2Body。然后每一帧根据b2bodies的位置更新你的精灵位置。

答案 1 :(得分:0)

我希望人们阅读的答案。

即使b2World实现了一些绘图功能,它只是用于调试目的,应该按原样使用(除非你想改变一行或两行)。

如果你想绘制更高级别的对象(或更改调试绘图的行为),你不应该修改b2World的绘图或GLES-Render。相反,您可以覆盖CCSprite / CCLayer绘图方法。