1

我一直在尋找許多關於使用精靈邊界框的cocos2d-iPhone碰撞檢測的不同主題,並且我有一個以CCNode爲中心偏移位置的精靈(精靈是因此該位置相對於CGPoint中的父節點),而另一個精靈根本沒有連接到節點。當我嘗試在兩個精靈的邊界框上執行碰撞檢測時,它不起作用,因爲一個精靈已添加到該節點。 因此,我的解決方案是使用noded sprites位置複製sprite,以使另一個未連接的sprite,但採用另一個sprite的座標。我想出瞭如何用convertToWorldSpace方法獲取子精靈的位置,但是該位置是相對於節點的,所以我得到了非常奇怪的座標。與節點配對的精靈之間的碰撞檢測

所以我的問題是,有沒有辦法讓碰撞在兩個不同的精靈的邊界框上工作,即使一個是另一個節點的子節點?如果沒有簡單的方法來做到這一點,那麼有沒有辦法讓場景中的精靈的絕對位置,與不是它的父母的相對點? 如果需要,我可以稍後添加示例代碼。我現在不行,因爲我在使用我的手機。

回答

0

嘗試從每個父節點使用convertToWorldSpace。

子畫面連接到一個節點,使用:[nodeParent convertToWorldSpace:connectedNode]

在精靈那isn`t連接到一個節點,使用:自convertToWorldSpace:unconnectedNode]

+0

謝謝!我需要轉換父節點的空間而不是精靈。這也有助於:http://bobueland.com/cocos2d/2011/the-magic-of-node-spaces/ – evanlws