안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
현재 라이브월페이퍼를 만들고 있는데, 이미지를 불러와서 효과 주는 과정을 진행하고 있어요.
예를 들면 눈송이 아이콘 하나를 만들어서, 그것에 크기 변화를 주어 눈이 내리는 것 처럼 화면에 뿌리려고요.
눈송이 이미지는 bitmap 으로 불러와서 캔버스에 canvas.drawbitmap(bitmap, src, dst, null); 이 방식으로 뿌리고 있어요.
여기서 궁금한게 있는데요, 이런식으로 비트맵을 많이 쓰면 배터리 소모, cpu 사용량, 메모리 사용량 등이 많아 질까요?
아무레도 좀 풍성하게 오는 걸 하고 싶어서 많이 썻더니 배터리 소모가 상당 한 것 같아서요...
이것 저것 찾아보니까 Drawable , Paint , Path 이런걸 쓰는 방법도 있더군요.
화면에 뿌릴 이미지 갯수가 많을 땐 어떤 방법을 쓰는게 가장 효율적일까요?
답변 좀 부탁드릴게요ㅠ 좋은 하루 보내세요~




방법을 달리하면 어느정도 차이가 있긴 하겠지만
지속적으로 넓은 영역에 이미지 작업을 하면 베터리나 메모리 사용량은 답이 없습니다.
게임이 자원을 가장 많이 먹는 이유도 그래픽 처리 때문이고 그래서 게임 제대로 하려면
비싸고 전기도 많이 먹는 그래픽 카드를 사기도 할 정도니까 말이죠
해봐야 알겠지만 캔버스를 하나 눈덩이 크기로 만들어서 한번 그려놓고
그걸 복사해서 뿌리는게 조금이나마 낫지 않을까 합니다.
아무래도 매번 파일에서 읽어다 뿌리는 것 보다는 메모리 복사가 자원 소모가 적지 않을까 합니다.