본문 바로가기

IT 번역/Cocos2d-x 메뉴얼[manual] 번역

스프라이트 생성하기 | Creating Sprites

작성일자: 2019-06-08
페이지: https://docs.cocos2d-x.org/cocos2d-x/en/sprites/creating.html

 

Creating Sprites · GitBook

Creating Sprites There are different ways to create Sprites depending upon what you need to accomplish. You can create a Sprite from an image with various graphic formats including: PNG, JPEG, TIFF, and others. Let's go through some create methods and talk

docs.cocos2d-x.org

스프라이트[Sprite]를 생성할 때는, 어떤 것을 원하느냐에 따라 매우 다른 방법을 사용하게 됩니다. 그 중에 한가지 방법으로, PNG, JPEG, TIFF 기타 등등을 포함한 다양한 포멧의 이미지 파일에서 스프라이트[Sprite]를 생성하는 것이 있습니다. 몇가지 생성 메소드들을 훑어볼까요?

한개의 스프라이트[Sprite] 생성하기 | Creating a Sprite

스프라이트[Sprite]를 생성할 때에는, 사용할 이미지 파일을 지정하는 방법도 가능합니다.


auto mySprite = Sprite::create("mysprite.png");


위의 코드를 보시면, mysprite.png 이미지를 사용하여 스프라이트[Sprite]를 생성한 것을 확인하실 수 있습니다. 이런 식으로 생성한 스프라이트[Sprite]는 해당 이미지 파일의 이미지 전체를 사용하게 됩니다. 또한 mysprite.png와 동일한 크기를 갖게 됩니다. 이미지 파일의 크기가 200 x 200 일경우, 생성된 스프라이트[Sprite]의 크기 역시 200 x 200이 되는 것이죠.

 

렉트[Rect]를 사용하여 스프라이트[Sprite] 생성하기 | Creating a Sprite with a Rect

이전 예제에서 생성된 스프라이트[Sprite]는 원본 이미지 파일과 동일한 크기를 갖고 있습니다. 근데 만약 원본 파일의 일정 부분만 스프라이트[Sprite]로 생성하고 싶다면 어떻게 해야 할까요? 여기 바로 그럴때 사용하시라고 렉트[Rect]를 준비해두었습니다.

렉트[Rect]는 4개의 값을 갖고 있습니다: 원래 이미지의 x, 원래 이미지의 y, 폭과 높이.


auto mySprite = Sprite::create("mysprite.png", Rect(0,0,40,40));


렉트[Rect]는 왼쪽 위 코너에서 시작합니다. 이것은 화면에 표시할 때 사용하는 것과은 반대죠. 화면에 표시할 때의 위치는 왼쪽 아래 코너를 기준으로 하니까요. 그래서, 이 스프라이트[Sprite]의 결과는 원본 이미지의 일 부분만을 의미하게 됩니다. 위의 코드의 경우에는 왼쪽 위 코너에서부터 40 x 40 의 크기를 갖는 스프라이트[Sprite]가 생성된 것이죠.

이 렉트[Rect]를 지정하지 않을 경우에는 Cocos2d-x는 자동적으로 읽어오는 원본 이미지 파일의 전체 폭과 높이를 사용하게 됩니다. 아래의 예제를 한번 보세요. 만약 200 x 200 크기의 이미지를 사용한다면, 아래의 두 구문은 동일한 결과를 갖게 되는 겁니다.


auto mySprite = Sprite::create("mysprite.png");

auto mySprite = Sprite::create("mysprite.png", Rect(0,0,200,200));