PIXI 碰撞檢測 PIXI文件翻譯 6

2021-08-28 01:55:13 字數 1157 閱讀 6082

你現在知道如何製作各種各樣的圖形物件,但你能用他們做什麼?乙個有趣的事情是構建乙個簡單的碰撞檢測系統。你可以使用乙個自定義函式 hittestrectangle來檢查任何兩個矩形pixi sprites是否接觸。

hittestrectangle(spriteone, spritetwo)

如果它們重疊,hittestrectangle將返回true。您可以使用hittestrectangle與if語句來檢查兩個精靈這樣的之間的衝突:

if (hittestrectangle(cat, box))  else

正如你將看到的,hittestrectangle是進入龐大宇宙的遊戲設計的前門。

在collisiondetection.html檔案examples夾中執行該檔案,獲取如何使用的工作示例hittestrectangle。使用箭頭鍵移動貓。如果貓碰到盒子,盒子變紅,「打!由文字物件顯示。

[img]

你已經看到了建立所有這些元素的所有**,以及使貓移動的鍵盤控制系統。唯一新的東西是在函式hittestrectangle內部使用的方式play來檢查衝突。

function play() else

}

因為該play函式每秒由遊戲迴圈呼叫60次,所以這個if語句不斷地檢查cat和box之間的衝突。如果hittestrectangle是true,文字message物件用於settext顯示「hit」:

message.text = "hit!";

然後通過將框的tint屬性設定為十六進製制紅色值,將框的顏色從綠色更改為紅色。

box.tint = 0xff3300;

如果沒有衝突,訊息和框保持在其原始狀態:

message.text = "no collision...";

box.tint = 0xccff99;

這段**很簡單,但是突然間,你建立了乙個似乎完全活躍的互動世界。它幾乎像魔術!也許,令人驚訝的是,你現在有所有你需要的技能開始製作遊戲與pixi!

hittestrectangle函式

PIXI 碰撞和邊界

限定了探險者的運動邊界,contain explorer,state contain explorer,function contain sprite,container top if sprite.y container.y right if sprite.x sprite.width conta...

碰撞檢測 膠囊體碰撞檢測

膠囊體 給定一條線段l,所有道l的距離為r的點的集合。由定義可知,膠囊體由半徑r和線段l標識。檢測兩個膠囊體是否發生碰撞,即檢測兩條線段l1 l2的最短距離d是否大於l1 l2的半徑r1 r2之和,d r1 r2 則未碰撞,否則發生碰撞。設線段l1端點為a1 a2,線段l2端點為b1 b2,號表示兩...

Unity碰撞檢測

碰撞個必要條件為兩個角色必須都掛載 rigibody 剛體元件,至少乙個角色掛載 collider指令碼 第一種 觸發器,必須開啟 collider的 istrigger 為 true 兩個碰撞物件會相互穿過 void ontriggerenter collider collider 開始觸發器 v...