Unity Sprite Renderer 가이드 (2022.3)
소개
Unity의 Sprite Renderer 컴포넌트는 2D 및 3D 프로젝트에서 스프라이트를 렌더링하고 시각적으로 표시하는 방식을 제어합니다. 이 가이드는 Sprite Renderer의 속성과 기능을 자세히 설명하고, 활용 예제를 추가로 제공합니다.
Sprite Renderer 구성요소
속성 | 설명 |
---|---|
Sprite | 렌더링할 스프라이트 텍스처를 정의합니다. |
Color | 스프라이트의 버텍스 컬러를 정의하여 색상을 변경합니다. |
Flip | 선택한 축에서 스프라이트 텍스처를 반전합니다. |
Material | 스프라이트 텍스처를 렌더링할 때 사용할 머티리얼을 정의합니다. |
Draw Mode | 스프라이트 크기 변경 시의 렌더링 방식을 정의합니다. |
Sorting Layer | 렌더링 시 스프라이트의 우선 순위를 설정합니다. |
Order In Layer | 정렬 레이어 내에서 스프라이트의 렌더 순서를 설정합니다. |
Mask Interaction | 스프라이트 렌더러와 스프라이트 마스크 간의 상호작용을 설정합니다. |
Sprite Sort Point | 스프라이트와 카메라 간의 거리를 계산하기 위한 포인트를 선택합니다. |
주요 속성 설명
Sprite
- 설명: 어떤 스프라이트를 표시할지를 결정합니다. 스프라이트 에셋 리스트에서 원하는 항목을 선택할 수 있습니다.
Color
- 설명: 스프라이트의 색상을 조정하는데 사용됩니다. 알파 채널 값을 조정하여 투명도도 설정할 수 있습니다.
Draw Mode
- Simple: 스프라이트가 크기 변할 때 전체가 확대/축소 됩니다.
- Sliced: 9슬라이스 스프라이트로 설정할 수 있습니다.
- Tiled: 스프라이트의 특정 부분이 타일링됩니다.
Sorting Layer
- 설명: 스프라이트가 렌더링될 레이어를 선택하여 우선 순위를 설정합니다. 숫자가 낮은 스프라이트가 먼저 렌더링됩니다.
Mask Interaction
- 설명: 스프라이트 렌더러가 마스크와 어떻게 상호작용할지를 결정합니다.
- None: 상호작용 없이 렌더링
- Visible Inside Mask: 마스크 안에서만 스프라이트가 보임
- Visible Outside Mask: 마스크 밖에서만 스프라이트가 보임
활용 예제
- 스프라이트 생성:
csharp GameObject mySprite = new GameObject("My Sprite"); SpriteRenderer spriteRenderer = mySprite.AddComponent<SpriteRenderer>(); spriteRenderer.sprite = mySpriteSprite;
- 스프라이트 색상 변경:
csharp spriteRenderer.color = new Color(1, 0, 0, 1); // 빨간색
- 스프라이트 플립:
csharp spriteRenderer.flipX = true; // X축 반전
- 정렬 레이어 변경:
csharp spriteRenderer.sortingLayerName = "Foreground"; // 포그라운드 레이어로 설정
- 머티리얼 설정:
csharp spriteRenderer.material = new Material(Shader.Find("Sprites/Default")); // 기본 머티리얼 사용
결론
Sprite Renderer는 Unity의 2D 게임 개발에 필수적인 요소입니다. 이를 통해 스프라이트의 외관과 상호작용을 쉽게 제어할 수 있습니다. 다양한 프로퍼티와 기능을 조절하여 자신만의 개성 있는 스프라이트를 만들어 보세요!