Unity 그래픽스 기능을 위한 하드웨어 요구 사항
그래픽스 작업 수행 방법

스프라이트 렌더러

Sprite Renderer 컴포넌트를 사용하여 2D와 3D 씬에서 사용되는 Sprites 로 이미지를 표시할 수 있습니다.

컴포넌트 메뉴(Component > Rendering > Sprite Renderer)에서 스프라이트 렌더러를 게임 오브젝트에 추가할 수 있습니다. 또는 메뉴(GameObject > 2D Object > Sprite)에서 스프라이트 렌더러가 이미 추가된 게임 오브젝트를 생성할 수 있습니다.

프로퍼티: 기능:
Sprite 렌더링할 스프라이트 오브젝트입니다. 스프라이트 오브젝트는 텍스처 임포터의 스프라이트 설정을 사용하여 텍스처로부터 생성할 수 있습니다.
Color 렌더링된 메시의 버텍스 컬러입니다.
Flip Flip the sprite in the X or Y planes.
Material Material used to render the sprite.
Sorting Layer The layer used to define this sprite’s overlay priority during rendering.
Order In Layer The overlay priority of this sprite within its layer. Lower numbers are rendered first and subsequent numbers overlay those below.

세부 정보

3D 그래픽스에서는 보여지는 포지션과 조명에 따라 오브젝트의 형상이 달라집니다. 대조적으로 2D에서 이미지는 기본 포지션, 스케일, 회전 외에 다른 변환 없이 그대로 화면에 표시됩니다. 2D 좌표를 부여받은 스프라이트 포지션으로, 렌더링 시 카메라로부터의 거리나 “뎁스” 컨셉트가 존재하지 않습니다.

그러나 각각 다른 스프라이트의 오버레이 순서를 결정하는 것은 매우 중요합니다. 즉, 여러 스프라이트의 경로가 교차될 때 어떤 스트라이트가 위에 놓일지를 결정하는 방식이 존재해야 합니다. 예를 들어 운전 게임에서는 자동차가 도로 표면의 플랫 오브젝트를 지나가는 것처럼 보여야 합니다. Unity는 Sorting Layer 개념을 사용하여 스프라이트를 그룹으로 나누어 오버레이의 우선 순위를 결정합니다. 순서가 높은 정렬 레이어의 스프라이트는 순서가 낮은 정렬 레이어의 스프라이트를 오버레이합니다.

때로는 동일한 정렬 레이어에 있는 두 개 이상의 오브젝트(예: 횡스크롤 게임에서 플레이어 캐릭터가 둘인 경우)가 서로 겹치기도 합니다. Order In Layer 프로퍼티를 활용하여 동일한 레이어의 스프라이트에 일관된 우선 순위를 적용할 수 있습니다. 정렬 레이어의 규칙과 마찬가지로, 낮은 숫자가 먼저 렌더링되고 나중에 렌더링되는 높은 숫자가 그 위에 놓입니다. 정렬 레이어 편집에 대한 자세한 내용은 레이어 관리자 페이지를 참조하십시오. 정렬 레이어를 사용하지 않으면 스탠다드 뎁스 기반 정렬이 사용됩니다.

렌더링(Rendering)

스프라이트 렌더러는 Sprite 프로퍼티에 정의된 텍스처를 사용하지만 Material 프로퍼티에 정의된 셰이더와 다른 프로퍼티를 사용합니다. 이 작업은 씬 뒤에서 MaterialPropertyBlock을 사용하여 이루어집니다. 즉, 머티리얼에 할당되는 텍스처에 대해 신경 쓸 필요 없이 동일한 머티리얼을 사용하여 다른 스프라이트를 렌더링할 수 있습니다.

스프라이트는 각 버텍스에서 포지션, 컬러, UV를 사용하는 메시에 렌더링되지만 노멀 벡터를 사용하지 않습니다. 머티리얼에 노멀 벡터가 필요할 경우 버텍스 셰이더를 사용하여 계산할 수 있습니다. 자세한 내용은 표면 셰이더 예제 페이지를 참조하십시오.

스프라이트에 사용되는 디폴트 셰이더는 다음과 같습니다.

  • Sprites/Default - 씬에서 광원과 상호작용하지 않는 단순한 알파 블렌디드 셰이더입니다.

  • Sprites/Diffuse - 광원과 상호작용하는 단순한 알파 블렌디드 표면 셰이더입니다. 전면 방향의 노멀 벡터 (0,0, –1)를 생성합니다.

뒤집기

스프라이트는 음수transform.scale을 설정하여 뒤집을 수 있지만, 자식 게임 오브젝트를 뒤집고 콜라이더를 뒤집는 부작용이 있으며, 높은 성능이 요구될 수 있으므로 부작용이 염려된다면 사용하지 않는 것이 좋습니다.

SpriteRenderer 뒤집기 기능은 다른 컴포넌트나 게임 오브젝트에 영향을 주지 않는 가벼운 대체 기능을 제공합니다. 렌더링된 스프라이트만 x 축 또는 y 축을 기준으로 쉽게 뒤집습니다.

Unity 그래픽스 기능을 위한 하드웨어 요구 사항
그래픽스 작업 수행 방법