작성
·
706
답변 2
1
캔버스 자체가 픽셀 하나하나의 색상데이터를 직접 다루는 식으로 동작을 하는거라
기본적으로 <img> 같은 추상화 레벨이 높은 고급 객체들을 다루는 것보다 연산이 빠르다고 합니다.
그 대신 그만큼 직접 해줘야 하는 일이 많아 코딩량은 더 많아지는 것이고요~
이미지나 브라우저에따라, 육안으로 차이는 없을 수도 있기때문에 반드시 캔버스를 쓰실 필요는 없다고 생각됩니다^^
덧붙여, 캔버스 판 크기가 커질 수록(픽셀수가 늘어날수록) 캔버스 성능이 저하되기 때문에,
경우에 따라서는 모든 처리를 캔버스로 하는 것도 바람직하지 않을 수 있습니다.
예를들어 게임을 만들 경우,
계속 동적인 움직임을 갖는 캐릭터들은 캔버스에서 그려주고
정적인 배경이미지는 CSS의 백그라운드로 처리하는 식으로 섞어서 해주기도 하거든요~
구조나 환경에 따라 변수가 있을 수 있기때문에
<img>나 CSS 배경이미지, 그리고 캔버스를 번갈아가며, 또는 혼합해서 테스트 해보시고,
제일 나아보이는 것으로 택해서 개발하시면 좋을 것 같다는 생각입니다.
애플에서도 성능상의 이유로 캔버스를 즐겨 사용하고 있기 때문에,
이 강의는 애플 클론인 만큼 똑같이 캔버스로 개발해주었습니다^^
0