我正在使用libGdx和box2d工具制作游戏。我有一个问题,我无法在网上找到任何答案。
我一直在使用EdgeShape类在Box2d中绘制线条,稍后我会添加碰撞检测器。我知道如何将Textures添加到Fixtures等,但是我能以某种方式为EdgeShape绘制的边添加颜色吗?或者我被迫代替线条绘制矩形?
提前致谢!
答案 0 :(得分:3)
Box2D不提供任何图形帮助。它意味着游戏的后端。你得到你的身体的位置然后使用SpriteBatch
或ShapeRenderer
之类的东西来绘制适当的精灵或形状来代表你游戏中的那个身体。
如果您只是调试游戏并希望查看所涉及的所有实体,则可以使用Box2DRenderer
,它将以非常简单的术语显示它们。请注意,这不适用于产品的最终版本,如果您选择包含该产品,它将为您带来显着的性能影响。
答案 1 :(得分:0)
此问题已经得到解答,但是,您可以更改颜色。这适用于仍在寻找解决方案的任何人。 你可以做这样的事情,我已经测试了这个并且它有效:
render = new Box2DDebugRenderer();
render.SHAPE_STATIC.r = some float;
render.SHAPE_STATIC.g = some float;
render.SHAPE_STATIC.b = some float;
render.SHAPE_STATIC.a = some float;
render.SHAPE_KINEMATIC.r = some float;
render.SHAPE_KINEMATIC.g = some float;
render.SHAPE_KINEMATIC.b = some float;
render.SHAPE_KINEMATIC.a = some float;
等任何身体类型等。