2011-04-10 110 views
0

我做了一堆搜索,但我不確定什麼答案適用於我的問題。我正在製作一個簡單的遊戲,在計時器中,圖像向下移動,同時左右移動「角色」。我怎麼會讓它在碰撞時從變量中減去1?我可以根據需要發佈代碼C++簡單圖像衝突

+0

是你的問題檢測碰撞或從某物減去?是的,一些(短)代碼提取將會有所幫助。 – Mat 2011-04-10 16:49:30

+0

其檢測碰撞和繼承代碼http://pastebin.com/mirW1bQM – Al3xhamilton 2011-04-10 17:12:11

回答

3

你說的是碰撞檢測嗎?我可能需要代碼,但我假設你知道對象的寬度和高度,x和y位置,並且它們是矩形的。檢查它們是否相交應該是微不足道的。檢查對象1的(y +高度)是否大於對象2的(y +高度),並且對象1的(x +寬度)是否大於對象2的x。爲其他邊緣做類似的事情。

編輯:事實上,你可以在另一個線程上運行碰撞檢測只是做不會妨礙你的UI線程。

+0

我的問題之一是找到X和Y我知道寬度和高度。 – Al3xhamilton 2011-04-10 17:06:26

+0

你不存儲對象的位置嗎?如果不是,你如何處理實體? – ssube 2011-04-10 17:07:50

+0

好的,你在用什麼庫?你可以發佈一些代碼嗎?這將有所幫助。 – awesomeguy 2011-04-10 17:07:59

0

這取決於字符的形狀。對於兩個圓都是簡單的情況,您可以在每個步驟中找到中心之間的距離,並在達到小於半徑之和時觸發碰撞。對於矩形形狀的情況,它也會非常簡單。

+0

它的矩形是否有一種簡單的方法可以在每次移動時查找xy並檢查xy是否與「下降塊」相同? – Al3xhamilton 2011-04-10 17:07:15