2017-07-29 33 views
-1

繪製方框時出現問題。我在C++中使用coco2d + box2d。任何人都知道我該如何查看box2d正在繪製的盒子? 如果我聲明:方框2d繪製方框

b2PolygonShape bps; bps.SetAsBox(2/SCALE_RATIO,2/SCALE_RATIO);

當另一個物體碰撞箱子時,我有一些想法,即箱子的限制。但是如何在屏幕上查看box2d正在繪製的4行框?

此主題應該可以幫到我嗎? How to enable Box2d debug draw with Coco2d-x 3.0 beta 2

感謝

回答

0

聽起來有些誤會可能會發生。

Box2D具有診斷繪圖功能,但從概念角度忽略它。從Box2D FAQ

Box2D只是一個物理引擎。你如何畫東西取決於你。

相反的Box2D的思想爲「引」的行,想到的Box2D的作爲盒碰撞情況下模擬多邊形或者其棱角的物理過程。從Box2D的角度來看,長度以米爲單位,質量以千克爲單位,以秒爲單位的時間(MKS單位)。在放置屍體的地方,從概念上講,相對來說只是重要的。即還有什麼其他機構在附近或即將成爲。無論將身體置於-10的y值高於+10的身體,然而取決於您如何渲染其位置以及將引力設置爲什麼。您可以決定將Box2D的版本y=-10渲染在窗口頂部,並且y=+10位於底部。

如果您對Box2D物理世界和圖形渲染之間的轉換不清楚,那麼Box2D的內容並不多,而更多的是關於如何識別數學轉換的工作原理。從這個角度來看,你需要擴展,翻譯和輪換來理解。更高級別的渲染API通常提供類似transformation matrix的概念點(例如從Box2D物理透視圖)到屏幕上的點。

希望這會有所幫助。