2011-10-01 100 views
1

在我的應用程序中,我有一堆CCSprites,我希望有一個碰撞檢測功能,只有當CCSprites中的非透明像素髮生碰撞時纔會起作用。我不想被限制在碰撞的精靈之間的顏色。我認爲這就是Cocos2D論壇上的'像素完美碰撞檢測'線程所做的,但我想用任何顏色來實現真正的碰撞。這種碰撞檢測會出現在我的遊戲循環中,因此它不會太昂貴。無論如何,有沒有人對我如何做到這一點有任何想法? 我願意使用Cocos2D,Box2D或花栗鼠甚至UIKit,如果它可以做到的話。像素碰撞檢測?

謝謝!

回答

3

當談到硬件渲染圖形時,「我想要像素完美衝突」和「我不希望它們太昂貴」是相互排斥的。

要麼寫一個簡單的渲染器,不允許這種複雜的轉換,抗鋸齒或亞像素放置或使用實際的GPU渲染某種碰撞掩碼。在GPU上這樣做的問題在於,將內容發送到GPU的速度很快,而且要花費很多才能恢復。有一個原因,爲什麼這種技術是非常罕見的。

Chipmunk Pro的自動幾何東西支持將各種圖像轉換爲碰撞形狀,但尚未完成。

1

如果你不想失去表現,它是不可能的。嘗試做一個基於圈子的系統分裂,這是最好的方式來做一個碰撞