簡體   English   中英

Box2D未檢測到碰撞

[英]Box2D not detecting collision

我正在使用LibGdx庫的Box2D擴展來開發游戲,除了碰撞檢測之外,其他所有東西都應該像它應該的那樣工作。

這是當前的樣子: 圖片

這個想法是玩家(小圓圈)可以跳出邊界(重力設置為朝向地面的中心)以躲避繞地面旋轉的傳入障礙物。 一旦障礙物到達Despawner,ContactListener應調用將破壞障礙物主體的方法。

首先,我有幾個不同的機構:

  • 播放器(動態身體)
    播放器僅受重力和某些作用力的影響(無變換)
  • 地面(運動體)
    地面只有一個線速度(這就是為什么它不是靜態物體的原因)
  • 障礙物(運動身體)
    使用setTransform(position,angle)方法移動障礙物
  • Despawner(靜態身體)

我還使用位過濾器來管理沖突(我已對其進行了三重檢查,但這並不是問題的根源)。

實際的問題是,障礙物是碰撞的一部分時,除非他與Player Body碰撞,否則我的ContactListener不會調用beginContact()方法。 所有其他物體相互碰撞就很好。

謝謝您的幫助!

從這里的手冊:

http://www.box2d.org/manual.html#_Toc258082973

運動體不會與其他靜態或運動體碰撞。

您將必須找出一種新方法來觸發Despawner。 您將無法在兩種動力學或動力學與靜態身體類型之間發生碰撞。 也許是帶有傳感器固定裝置的身體。 或Y位置值。 或關閉重力的動態物體。

游戲看起來很酷,期待它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM