簡體   English   中英

在沒有Box2D的情況下為libgdx Actor實現碰撞檢測

[英]Implementing collision detection for libgdx Actors without Box2D

我試圖在不使用Box2D的情況下為libgdx演員(玩家和敵人)實施碰撞檢測。 正如我閱讀的Box2D支持內置的碰撞檢測一樣,但是由於我的游戲不涉及環境中的任何物理因素,因此我不願意為此專門使用Box2D。

我發現許多示例都通過為此定義一個邊界框(矩形)來啟用沖突檢測,但是我正在尋找一種內置解決方案。

如果您不希望使用Box2d內置碰撞,則可以始終使用Rectangle的overlay方法來檢查是否某些矩形相互重疊(或碰撞)。

因此,矩形重疊方法的工作原理如下:

Rectangle rect1 = new Rectangle();
Rectangle rect2 = new Rectangle();
if(rect1.overlaps(rect2)){ //do your stuff here }

這里要注意的一件事是,您可以始終將紋理放置在矩形所在的位置。 因此,碰撞矩形也會使您碰撞精靈/紋理。

我希望您可能已經知道該怎么做,但是下面仍然是一個示例:

batch.draw(myTexture,rect1.x,rect1.y,100,100);

暫無
暫無

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

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