2D에서의 게임플레이
스프라이트 생성기(Sprite Creator)

스프라이트(Sprites)

스프라이트 는 2D 그래픽 오브젝트입니다. 3D에서 작업하는 데 익숙한 경우 스프라이트 는 사실상 스탠다드 텍스처에 불과하지만, 여러 가지 기법을 활용하여 개발 중에 스프라이트 텍스처를 효율적이고 편리하게 합치거나 관리할 수 있습니다.

Unity 에디터는 플레이스홀더 스프라이트 생성기, 내장 스프라이트 에디터, 스프라이트 렌더러, 스프라이트 패커를 제공합니다.

Unity 프로젝트에서 에셋을 Sprite 로 설정하는 방법에 대한 자세한 내용은 아래의 스프라이트 임포트 및 설정을 참조하십시오.

스프라이트 도구

스프라이트 생성기

스프라이트 생성기를 사용하여 프로젝트에 플레이스홀더 스프라이트를 생성하면 그래픽스가 확보될 때까지 기다릴 필요 없이 개발을 계속 진행할 수 있습니다.

스프라이트 에디터

스프라이트 에디터를 통해 더 큰 이미지에서 스프라이트 그래픽스를 추출하고 이미지 에디터에서 하나의 텍스처 안에 있는 여러 컴포넌트 이미지를 편집할 수 있습니다. 예를 들어 하나의 이미지 안에서 캐릭터의 팔과 다리와 몸을 각각 분리된 요소로 유지하기 위해 사용할 수 있습니다.

스프라이트 렌더러

스프라이트는 3D 오브젝트에 사용되는 메시 렌더러가 아닌 스프라이트 렌더러 컴포넌트로 렌더링됩니다. 스프라이트 렌더러를 사용하여 이미지를 스프라이트 로 표시하여 2D와 3D 씬에서 모두 사용할 수 있습니다.

스프라이트 패커

스프라이트 패커는 프로젝트의 비디오 메모리 사용 및 성능을 최적화하기 위해 사용합니다.

스프라이트 임포트 및 설정

스프라이트 는 Unity 프로젝트의 에셋 타입 중의 하나입니다. Project View 를 통해 사용할 준비가 된 스프라이트를 볼 수 있습니다.

다음 두 가지 방법으로 스프라이트 를 프로젝트로 가져올 수 있습니다.

  1. 컴퓨터의 파인더(Mac OS X) 또는 파일 탐색기(Windows)를 사용하여 Unity 프로젝트의 Assets 폴더에 이미지를 직접 넣습니다.

    Unity 에디터가 이미지를 인식하여 프로젝트의 Project View 에 표시합니다.

  2. Unity 에디터에서 Assets > Import New Asset… 을 선택하여 컴퓨터의 파인더(Mac OS X) 또는 파일 탐색기(Windows)를 엽니다.

    여기에서 원하는 이미지를 선택하면 Unity 에디터가 Project View 에 넣습니다.

이와 관련한 더 자세한 내용과 Assets 폴더 정리에 대한 내용은 에셋 임포트를 참조하십시오.

이미지를 스프라이트로 설정

프로젝트가 2D로 설정된 경우 임포트하는 이미지가 자동으로 Sprite 로 설정됩니다.

하지만 프로젝트 모드가 3D로 설정된 경우 이미지가 Texture 로 설정되므로 해당 에셋의 Texture Type 을 변경해야 합니다.

  1. 에셋을 클릭하여 Import Inspector 를 엽니다.

  2. Texture TypeSprite (2D and UI) 로 설정합니다.

    (그림 1: 에셋의 인스펙터에서…. 참조)

프로젝트 모드를 2D로 설정하는 데 대한 자세한 내용은 2D 또는 3D 프로젝트를 참조하십시오.

그림 1: 에셋의 인스펙터에서 텍스처 타입을 스프라이트(2D 및 UI)로 설정
그림 1: 에셋의 인스펙터에서 텍스처 타입을 스프라이트(2D 및 UI)로 설정

스프라이트 정렬

Unity 에디터의 렌더러는 레이어 순서 또는 카메라와 렌더러의 거리와 같은 몇 가지 기준에 따라 정렬됩니다. Unity 에디터의 Graphics Settings(메뉴: Edit > Project Settings > Graphics)에는 Transparency Sort Mode 라는 설정이 있습니다. 이 모드에서 카메라를 기준으로 한 스프라이트의 상대적인 위치에 따라 스프라이트 정렬 방법을 설정할 수 있습니다. 더 구체적으로 설명하면, 이 모드에서는 축 위의 스프라이트 위치를 사용하여 어떤 스프라이트가 다른 스프라이트에 투명하게 보이고 투명하지 않게 보이는지 결정합니다.

다음 네 가지 Transparency Sort Mode 옵션을 사용할 수 있습니다.

  • Default - 카메라의 Projection 모드 설정이 Perspective 인지 아니면 Orthographic 인지를 기준으로 스프라이트를 정렬합니다.

  • Perspective - 원근 뷰를 기준으로 정렬합니다. 이 경우 카메라 위치에서 스트라이트 중심까지의 거리를 기준으로 스프라이트를 정렬합니다.

  • Orthographic - 직교 뷰를 기준으로 정렬합니다. 이 경우 뷰 방향에 따른 거리를 기준으로 스프라이트를 정렬합니다.

  • Custom Axis - Transparency Sort Axis에서 설정한 특정 축을 기준으로 스프라이트를 정렬합니다

Transparency Sort ModeCustom 으로 설정한 경우 Transparency Sort Axis 를 설정해야 합니다.

Transparency Sort ModeCustom Axis 로 설정된 경우 씬 뷰의 렌더러가 이 축과 카메라의 거리를 기준으로 정렬됩니다. 축은 –1과 1 사이의 값을 사용하여 정의합니다. 예: X=0, Y=1, Z=0이면 축 방향이 위쪽으로 설정됩니다. X=1, Y=1, Z=0이면 축이 X와 Y 사이의 대각선 방향으로 설정됩니다.

스크립트를 사용하여 스프라이트 정렬

스크립트를 통해 카메라의 다음 프로퍼티를 수정하여 카메라를 기준으로 스프라이트를 정렬할 수도 있습니다.

예:

var camera = GetComponent<Camera>();

camera.transparencySortMode = TransparencySortMode.CustomAxis;

camera.transparencySortAxis = new Vector3(0.0f, 1.0f, 0.0f);

예제

이 설정은 예를 들어 스프라이트를 Y 축을 따라 정렬하는 데 사용할 수 있습니다. 이 설정은 2D 게임에서 더 높이 있는 스프라이트가 더 낮은 스프라이트 뒤에 정렬되어 더 밀리 있는 것처럼 보이게 하는 데 많이 사용됩니다.

Unity 에디터가 이 설정을 자동으로 관리하게 하려면 Transparency Sort ModeCustom Axis 로 설정하고 Transparency Sort AxisY 값을 0보다 큰 값으로 설정합니다.


2D에서의 게임플레이
스프라이트 생성기(Sprite Creator)