簡體   English   中英

如何在box2d中正確移除身體?

[英]How to remove a body properly in box2d?

我在 Box2D 中有很多具有相同BodyDef的主體,當我調用時:

Array<Body> bodies = new Array<Body>();
world.getBodies(bodies);
for(Body b : bodies){
    if(b.getPosition().y < -20f) {
        world.destroyBody(b);
    }
}

它使用BodyDef摧毀所有身體。

我該如何解決?

您沒有在此處引用任何BodyDef

world.destroyBody(b);

應該只破壞 body b 只要確保你的if條件沒問題。 您也可以逐步調試(或將日志放入if ),只是為了檢查銷毀的主體數量是否與if條件為true的次數相同。

暫無
暫無

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

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