2013-08-26 35 views
1

我正在使用libGdx和box2d工具製作遊戲。我有一個問題,我在網上找不到任何答案。爲線添加顏色Box2d(EdgeShape)

我一直在使用EdgeShape類在Box2d中繪製線條,我將在後面添加碰撞檢測器。我知道如何添加紋理到燈具等,但我可以以某種方式爲EdgeShape繪製的邊緣添加顏色?或者我不得不用線畫矩形?

在此先感謝!

+0

您是否嘗試過box2d調試渲染器 –

+0

是不是僅用於調試的調試渲染器?我想爲EdgeShape添加顏色,所以它具有相似的效果,例如將紋理添加到矩形形狀。可能嗎? – user2685747

+0

爲此使用shaperenderer –

回答

3

Box2D沒有提供任何圖形幫助。它的意思是作爲遊戲的後端。你得到你身體的位置,然後使用諸如SpriteBatchShapeRenderer之類的東西來繪製適當的精靈或形狀來表示你的遊戲中的身體。

如果您只是調試你的遊戲,並希望看到所有參與,你可以使用Box2DRenderer屍體將在非常簡單的術語顯示它們。請注意,這並不意味着在產品的最終版本中使用,如果您選擇將其包含在內,它會給您帶來顯着的性能提升。

To draw 2D in Libgdx.

To use Box2DRenderer in Libgdx.

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; 

等等等等任何身體類型。