我有這個我的小遊戲,它由主屏幕和主屏幕頂部屏幕上顯示的不少「窗口」組成。 在大多數情況下,它只是一個窗口[超過屏幕的90%],有時窗口會打開另一個窗口。 現在,我的主屏幕是一個圖層,我擁有的每個窗口都是一個CCNode,我可以從圖層中添加和刪除。 我沒有真正在我的節點上使用任何觸摸檢測。如果我想要可觸摸的東西,它將是一個CCMenu。 我確實有很多CCSprites被添加,如果有什麼要做的話。 我在想,如果這是一個很好的[性能明智]的方式去?換句話說,如果有一個基本原理可以改變我必須讓每個窗口作爲一個圖層。Cocos2d:單層還是增加節點更好還是多層更好?
0
A
回答
4
據我所知,使用多個層,而不是單層的兩個最重要的好處是觸摸檢測和Z排序:
觸摸檢測:採用多層使得它更容易使用觸摸檢測邏輯,它利用層次層次結構,因爲cocos2d引擎根據層次結構將所有觸摸事件依次傳遞給層。
Z排序:對於場景中的某些子畫面總是在其他子畫面的前,使用多個層使得它更容易執行該z排序而不是使用單層時ZORDER參數修補。
IMO沒有太大的區別表現明智使用單層和多層,但之間,如果你在同一時間在屏幕上大量的精靈,特別是如果有大量重複的精靈,我會強烈推薦使用CCSpriteBatchNode
(以前稱爲Texture Atlas或CCSpriteSheet),它是在處理大量精靈時提高遊戲性能的recommended cocos2d method,所以我認爲帶精靈批量節點的單層在性能方面更好,個別精靈直接添加到圖層中。
相關問題
- 1. Qt還是j2me更好?
- 2. 應該製作多少個dispatch_queue?少就是好還是更好?
- 3. 聲明是更好還是相同?
- 4. 寫入Integer還是隻是Int更好?
- 5. 多表好還是壞?
- 6. 我可以調節FileSystemWatcher,還是Timer是更好的選擇?
- 7. 是oracle數據庫體系結構單層,雙層還是多層?
- 8. Python-Mysql,更好的lib還是更好的方法?
- 9. 重構好還是不好?
- 10. 哪個更好? Java開發還是Webworks?
- 11. Lambda函數更好還是迭代?
- 12. 哪個更好? XML,INI還是其他?
- 13. 哪個更好?碳還是可可? (Mac)
- 14. PHP - 退出還是哪個更好?
- 15. 克隆還是應用:哪個更好?
- 16. 更好的選擇:Singleton還是dispatch_once?
- 17. PHP - 使用require_once('filename.php')還是require_once'filename.php'更好?
- 18. MySQL - 哪個更好:SELECT還是SELECT COUNT?
- 19. 在mysql中解釋更高的行數是好還是不好?
- 20. 是DroidText還好嗎?
- 21. PHP:連接1行還是多行會更好嗎?還是有區別?
- 22. 在更深層次上刪除json節點的更好方法
- 23. 這是更好還是更快的方法?
- 24. XSLT映射工具是更好還是更有用?
- 25. 詳細版本是更好的還是更嚴格的?
- 26. 將值計算移至SQL層的PHP層是否更好?
- 27. 使用路徑分隔符結束classpath變量還是更好?還是沒有更好?
- 28. UI:哪一個更好菜單層次更好可用性
- 29. 哪個循環具有更好的性能?增加還是減少?
- 30. Neo4j,哪個更好:多重關係還是一個屬性?