Starling 텍스쳐를 다루면서 궁금했던게 바로 ATF(Adobe Texture Format)이었습니다.
ATF : http://www.bytearray.org/?p=4472
항상 텍스쳐를 다루면서 이미 바이너리로 존재하는 데이터를 꼭 ByteArray로 변환해서 텍스쳐로 올려야하나?
라는 생각을 했었는데
바로 이 ATF 포맷이 그것을 지원하는 것 같습니다.
설명에 보면
- 렌더링이 빠르다.
- 텍스쳐 메모리가 적다.
- 텍스쳐 메모리로 올리는 속도가 빠르다
- mipmap을 자동으로 생성해준다.
- 압축을 통해 같은 사이즈에서 보다 높은 resolution이 가능하게 합니다(?)
텍스쳐 메모리를 적게 차지하고 업로드 속도가 빠르다는게 매력적이었습니다.
규모가 큰 게임을 만들면 텍스쳐 처리가 초기 버벅임의 주범이었습니다.
때문에 텍스쳐를 보다 효율적으로 다루는 방법이 필요했었는데
ATF 포맷을 보고 직접 테스트를 해봤습니다.
[ 테스트 방법 ]
1024x1024 사이즈의 이미지를
png와 atf 두벌을 놓고 각 10개씩 만들어서 생성 타임과 차지하는 메모리를 Monocle로 측정해보았습니다.
atf 파일은 uncompressed, no-mipmap으로 컨버팅했습니다.
1. PNG
초기화 시간 - 18 ms
메모리 - 11161 kb
GPU 메모리 - 61488 kb
2. ATF (Adobe Texture Format)
초기화 시간 - below 1 ms
메모리 - 10266 kb
GPU 메모리 - 61488 kb
결론
결론은 ATF 포맷이 성능이 월등했습니다.
PNG | ATF |
||
Time | 18 ms | < 1 ms |
월등히 좋음 |
Memory | 11161 kb | 10266 kb |
9% |
GPU Memory | 61488 kb | 61488 kb | 0% |
File size | 312 kb | 83 kb | 276% |
파일 사이즈에서부터 속도까지 매우 훌륭했습니다.
다만 주의할것이 이번 테스트는 OS X에서 테스트한겁니다.
다음에는 모바일에서 테스트를 해봐야할 것 같습니다.
'Flash Game > Starling' 카테고리의 다른 글
ATF 와 PNG 파일의 벤치마킹 결과 (21) | 2012.10.22 |
---|---|
PNG vs ATF 테스트 결과 - Android (1) | 2012.10.21 |
Starling 영역과 Stage영역의 터치 중복 문제 해결 방법 (3) | 2012.10.10 |
Starling으로 개발하기 위한 지침서 (6) | 2012.09.25 |
Starling에서 Hit 영역으로만 쓰이는 객체 만들기 (0) | 2012.09.25 |