1
A
回答
0
你的精靈不會發生任何事情。如果您沒有將內容大小和定位點設置到您的精靈容器中,則節點的位置總是等於節點的位置(0.f,0.f)。所以,你的精靈的位置將與它的父級有關(0.f,0.f)
0
基本上,cocos2d-x中的所有節點都有一個父節點(場景除外)。
更改父節點的位置將應用的位置更改其所有子,
更改子節點的位置,不會影響任何東西,除非這個孩子節點都有自己的孩子。
在您的示例中,如果更改CCSprite位置,CCNode的位置將保持不變。但是,如果您更改了CCNode的位置,則Sprite將發生相同的更改(在屏幕上移動)。
2
當您想要與節點一起移動多個精靈時,將CCSprite添加爲CCNode的子節點會很有幫助。
考慮玩家精靈的例子。假設你想把一個影子放在玩家的下面。將陰影精靈和玩家精靈添加到父CCNode中可以使它們都輕鬆移動。
如果你有一個精靈沒有其他精靈想要隨它移動,那麼你不需要CCNode的父親。
0
你想設置精靈的位置。簡單的原因是節點可能包含其他應該能夠獨立於精靈移動的子節點。
更改節點的位置並不影響父節點的位置。同樣,改變父母的位置也不會改變子節點的位置。子節點位置是它們父級位置的偏移量,所以如果移動父級,它們將繼續,但是它們的位置屬性(與父級位置相關)保持不變。
0
您最好移動CCNode的位置,導致CCSprite的位置也受其父項的影響。 儘管通過移動CCSprite的位置,您將在視覺上獲得相同的結果(其父不會移動),但它使得獲取精靈的位置更加複雜和令人困惑。
相關問題
- 1. 在CCNode中設置CCLabelTTF的位置並添加到CCScene [cocos2d v3]
- 2. CCNode內部元素的定位
- 3. Cocos2D CCNode在絕對屏幕座標中的位置
- 4. userData的CCNode的
- 5. 如何設置子類的CCNode大小?
- 6. 一舉數CCNode
- 7. CCNode遞歸getChildByTag
- 8. 如何在cocos2d中顯示CCNode的定位點?
- 9. 如何設置CCNode <CCRGBAProtocol>的活動參數?
- 10. CCNode CCTouch事件cocos2d-X
- 11. CCNode刪除不工作Cocos2d
- 12. Swift - 從現場獲取CCNode
- 13. 是否有Mac的圖形工具來幫助定位CCNode對象的圖層?
- 14. CCNode和CCLayer之間的區別?
- 15. 如何替換CCNode中的Sprite Frame?
- 16. 從CCNode繼承的init方法
- 17. CCNode與兒童的屬性和行動
- 18. 如何覆蓋CCNode中的「繪製」?
- 19. 暫停一段時間的CCNode
- 20. 位置DataGridViewComboBoxColumn的位置
- 21. 更改的位置,$位置
- 22. 在FOR語句中獲取CCNode/CCSprite
- 23. 如何通過觸摸刪除CCnode?
- 24. 不能從Cocos2D刪除孩子CCNode
- 25. 繼承CCNode,使用glTexImage2D blitzing圖像
- 26. CCNode重寫draw()方法不起作用
- 27. 將CCnode或NSObject排序爲NSMUtableArray
- 28. runAction在CCNode中不起作用
- 29. '位置:'和'位置:'
- 30. 從我們的位置找到位置最近的位置
節點的位置總是等於節點的位置(0.f,0.f)。 ?沒有得到它 – eugene
任何節點內的所有定位都與它的相關(0.f,0.f)。如果你的節點有contentSize,那麼(0.f,0.f)將在它的左下角。如果你的容器節點沒有contentSize,你可以考慮0.f字體的寬度和高度。因此,這種情況下的「左下角」將等於它的位置。 – Morion