日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

box2d 碰撞检测_box2d 碰撞检测 - by 小Ka

發布時間:2023/12/20 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 box2d 碰撞检测_box2d 碰撞检测 - by 小Ka 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

當你用到box2d后,box2d的碰撞監聽檢測 是最常用的內容之一。

在這里簡要說明一下,為后面的內容做點鋪墊。呵呵

1.通過繼承并實現b2ContactListener這個類,

class MyContactListener : publicb2ContactListener

{

……

}

2.進源代碼你可以看到這個類中有 4個回調函數,

class MyContactListener : publicb2ContactListener

{

//碰撞開始 即發現物體間重疊點時通知

virtual void BeginContact(b2Contact*contact);///碰撞結束 結束重疊后通知

virtual void EndContact(b2Contact*contact) ;//碰撞處理前 即根據物理定律處理剛體前

virtual void PreSolve(b2Contact* contact, const b2Manifold*oldManifold);//碰撞處理后

virtual void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse);

}

重寫這4個函數。在相關的函數中加入你想要碰撞處理的內容。 即可

3.把你這個監聽類加入到世界中

world->SetContactListener(mContactListener);

你就可以監聽碰撞事件了。

這里有幾個注意的地方:

1。我們不能在上面這幾個回調函數中刪除摧毀剛體。因為上面調用都是在box2d的b2World::Step方法中,此時正在進行遍歷物理世界的world->GetBodyList()

對物理時間世界進行演算。

官方說明:“你可能會以碰撞來施加傷害,并試圖摧毀關聯的角色和它的剛體。然而,Box2D 并不允許你在回調中改變物理世界,因 為你可能會摧毀 Box2D 正在運算的對象,造成野指針。”

如果強在里面加摧毀物體函數,你可能會發現world是被鎖定的。如需要摧毀,只能用一個容器把需要的處理事件保存起來,帶step方法執行完畢后再處理這些容器;具體的摧毀動態剛體的方法在下下章寫。。。

2。如果你在PreSolve()里改變了物體的位置,比如使他們后退一點,他們互不碰撞,那么他們不會調用EndContact();

3。你有時候很希望他們可以選擇碰撞的方向:比如 天上一堵墻 從下面可以穿過不會碰撞,上面接觸會碰撞 不能穿過。這屬于box2d中OneSidedPlatform的內容。具體的我會在下一章寫。

但要注意 如果你想碰撞后修改成穿過的狀態 應該用?contact->SetEnabled(false); ? 而不是?myShapeDef.isSensor = true; ?你在代碼里可以嘗試下兩個的區別。還是有點小明顯。雖然isSensor 是讓

傳感器會偵測碰撞而不產生碰撞反應。

box2d單純的碰撞檢測還是比較好看明白。還是附個小例子吧~

下載例子dome :附件

總結

以上是生活随笔為你收集整理的box2d 碰撞检测_box2d 碰撞检测 - by 小Ka的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: a视频在线观看免费 | 在线免费看污网站 | 亚洲产国偷v产偷v自拍涩爱 | 日韩欧美福利视频 | 国产精品91视频 | 色狠狠干| 国产精品一区二区三 | 欧美第一视频 | 久久偷看各类女兵18女厕嘘嘘 | 精品国产99一区二区乱码综合 | 精品在线视频一区二区三区 | 日本三级中文字幕在线观看 | 九九热精品视频在线观看 | 一色道久久88加勒比一 | 正在播放adn156松下纱荣子 | av网站观看| 亚洲三区视频 | 男人日女人在线观看 | 少妇视频在线观看 | 成人av地址 | 欧美亚洲视频一区 | 成人一区在线观看 | 欧美老熟妇一区二区三区 | 琪琪久久| 国产精品香蕉国产 | 免费黄网站在线看 | 国产午夜福利片 | 韩国一级淫片免费看 | 国产高清在线一区 | 波多野吉衣久久 | 台湾a级片 | 成人av18| 综合xx网 | 亚洲一区亚洲二区 | 国产在线观 | 午夜亚洲精品 | 久久神马| 国产高潮流白浆喷水视频 | 爱情岛亚洲论坛入口 | 在线观看黄色片 | 欧美成人免费播放 | 欧美视频久久久 | 欧美久久免费 | 69超碰 | 天天干夜夜骑 | 蜜桃成熟时李丽珍国语 | 男人天堂2014 | 淫五月| 欧美色图3p | 欧美影院一区二区 | 中文字幕23 | 久久久久久久久一区 | 男插女青青影院 | www.污在线观看| 26uuu精品一区二区 | 成了校长的性脔h文 | 欧美在线网站 | 一级片视频网站 | 荷兰女人裸体性做爰 | 老司机免费视频 | www.日本色| 五月六月丁香 | 欧美精品久久久久久久久老牛影院 | 一区二区伊人 | 久久久成人av | 银娇在线观看 | 国产精品一级视频 | 天堂资源av| 17c国产精品一区二区 | 激情五月婷婷综合网 | 91视频综合网 | 成人在线免费 | www.99re.| 国产免费av一区二区三区 | 国产精久久 | 色欧美亚洲 | 国产绿帽刺激高潮对白 | 亚洲国产黄色av | 国产1区| 白白色免费视频 | 日韩专区欧美专区 | 91精品国产综合久久久久久久 | yw在线观看 | 久久精品3| 久久久午夜精品 | 人妻在客厅被c的呻吟 | 亚洲成人自拍网 | 国产在线播 | 欧美高清视频一区二区 | 五月天综合激情网 | 96亚洲精品久久久蜜桃 | 欧美激情3p | 解开人妻的裙子猛烈进入 | 亚洲福利视频一区二区 | 精品国产区 | 香蕉一区二区 | 精品人妻天天爽夜夜爽视频 | 91涩涩视频| 日韩精品在线观看网站 |