큰 세계와 함께 cocos2d 게임을 디자인하려고합니다. wolrd 기와지도는 매우 크고, 어쩌면 20 ipad 화면 크기입니다. 화면에 CCTMXTiledMap을로드하는 방법을 알고 싶습니다. 직접 화면에 추가하면 너무 많은 메모리가 사용됩니까? 그렇다면이 문제를 해결할 수있는 해결책이 있습니까?cocos2d에서 큰 크기의 CCTMXTiledMap을로드하는 방법은 무엇입니까?
2
A
답변
1
타일 맵의 메모리 사용량은 타일 크기와 타일을 얼마나 스프라이트로 변환해야하는지 (예 : 애니메이션을 실행하려는 경우)에 따라 다릅니다.
타일의 크기가 32x32 픽셀이라고 가정합니다. 20 배 iPad 치수는 20.480x15.360 점을 의미합니다. 32로 나누면 640x480 타일 또는 총 307.200 타일의 타일 크기를 나타냅니다. 각 타일이 64 바이트 메모리를 사용한다고 가정하면 (오래된 cocos2d 버전에서는 64 바이트보다 작습니다) 거의 19MB의 메모리를 사용하여 맵이 완성됩니다. 텍스처조차 계산하지 않습니다.
이제는 스프라이트 속성 중 하나를 변경하거나 액션을 실행하여 CCSprite 인터페이스를 통해 주소를 지정하는 모든 타일에 대해 cocos2d는 해당 타일을 일반 CCSprite로 변환합니다. 마지막으로 체크 한 각 CCSprite 객체는 약 420 바이트를 사용합니다. 따라서 각 타일의 색상 속성을 변경하여 모든 타일을 CCSprite 객체로 변환하는 경우 타일 맵은 123MB의 메모리를 사용합니다. 다시 말하지만, 텍스처는 포함하지 않습니다.
Tilemap renderer in KoboldTouch을 사용해보세요. 매우 큰 타일 맵 (수백만 개의 타일, 즉 4000x4000 타일)을 처리 할 수 있으며 60fps로 렌더링합니다.
0
타일을 모두로드하려고하면 메모리가 너무 많이 차지하게됩니다.
CCTMXTilesMap에 대한이 자습서를 살펴보십시오.
관련 문제
- 1. oracle에서 큰 크기의 업데이트 쿼리를 사용하여 테이블을 업데이트하는 방법은 무엇입니까?
- 2. iOS에서 큰 크기의 PDF 스크롤 뷰를로드하는 방법은 무엇입니까?
- 3. 오라클 테이블에 더 큰 크기의 데이터를 삽입/업데이트하는 방법은 무엇입니까?
- 4. AIR IOS에서 큰 크기의 jpeg를 최적화하는 방법은 무엇입니까? (AS3)
- 5. cocos2d에서 장면을 재설정하는 방법은 무엇입니까?
- 6. cocos2d에서 텍스처를 채우는 방법은 무엇입니까?
- 7. cocos2d에서 타격을하여 타격을하는 방법은 무엇입니까?
- 8. Cocos2d에서 메뉴를 만드는 방법은 무엇입니까?
- 9. cocos2d에서 스프라이트를 켜는 방법은 무엇입니까?
- 10. cocos2d에서 스프라이트를 올바르게로드하는 방법은 무엇입니까?
- 11. cocos2d에서 다음 단계로가는 방법은 무엇입니까?
- 12. cocos2d에서 버튼을 만드는 방법은 무엇입니까?
- 13. 큰 키 크기의 RSA 암호화
- 14. SVN의 큰 크기의 브랜치로 작업
- 15. Java에서 큰 크기의 행렬을 처리하십시오.
- 16. 큰 크기의 데이터가있는 테이블을 분할해야합니까?
- 17. 큰 배열 크기의 세그먼트 오류
- 18. 큰 사진 크기의 포스트 만들기
- 19. 작은 크기의 이미지가로드되어 UIImageView에 표시된 후에 큰 크기의 이미지를로드하는 방법은 무엇입니까?
- 20. 큰 이미지 크기의 UIImage - 메모리 문제 - 충돌
- 21. cocos2d에서 CCMenuItemImage를 숨기거나 비활성화하는 방법은 무엇입니까?
- 22. cocos2d에서 batchnode를 올바르게 축척하는 방법은 무엇입니까?
- 23. Cocos2d에서 직선 결말을 교정하는 방법은 무엇입니까?
- 24. cocos2d에서 속성이 지정된 문자열을 사용하는 방법은 무엇입니까?
- 25. Cocos2d에서 인공 지능을 만드는 방법은 무엇입니까?
- 26. cocos2d에서 지정된 각도로 애니메이션을 재생하는 방법은 무엇입니까?
- 27. cocos2D에서 같은 스프라이트를 추가하는 방법은 무엇입니까?
- 28. cocos2d에서 막대 굽힘 효과를 만드는 방법은 무엇입니까?
- 29. cocos2d에서 악수 이벤트를 감지하는 방법은 무엇입니까?
- 30. cocos2d에서 스프라이트 크기를 변경하는 방법은 무엇입니까?
"게임 개발"포럼이 도움이 될 것 같네요. – doNotCheckMyBlog