2010-11-08 81 views
1

對於那些你們誰使用Bullet物理...子彈物理問題

我閱讀並運行Hello World示例http://www.bulletphysics.org/mediawiki-1.5.8/index.php/Hello_World, 我很困惑下一步去哪裏。

hello world tutorial由btStaticPlaneShape和btSphereShape組成,都是剛體。球體在靜態平面上反彈沒有問題。

但是,當我在另一個位置製作另一個球體時,Bullet不會記錄兩個球體形狀之間的碰撞,但它們會自動反彈離開btStaticPlaneShape。什麼樣的內部魔法導致btStaticPlaneShape自動彈出與它碰撞的對象?

在Bullet中是否有一個設置可以在碰撞後自動將對象彈離彼此?或者您是否必須手動測試碰撞並自行應用所產生的力量?

謝謝。

回答

0

您可能無意中在Bullet認爲他們不應該相互碰撞的狀態下創建了這個球體。如果你堅持使用默認設置,只需在Hello World程序中添加另一個球體,Bullet應該注意並對它們的衝突做出反應。除非您還修改Hello World以將恢復原狀設置爲大於零的值,否則它們不會實際反彈,但它們會發生碰撞。例如,我在第一個球體的正上方添加了第二個球體(通過在創建球體的代碼塊周圍放置一個for循環,並使用循環變量確定原點y值)並擴展了模擬,以使其運行足夠長的時間既要到達飛機。第一架飛機降落在那裏,第二架落在第一架並在那裏停留。

如果這沒有幫助,那麼發佈一些代碼可能是一個好的下一步。