Unity 스크립팅 API 매뉴얼
개요
Unity는 강력한 게임 개발 엔진으로, 스크립팅 API를 통해 게임 오브젝트와 상호작용할 수 있는 다양한 기능을 제공합니다. 본 문서는 Unity의 레이어와 레이어 마스크 설정에 대한 내용을 다루고 있습니다.
레이어와 레이어 마스크
레이어(방식)는 게임 오브젝트의 그룹화 방식을 정의합니다. 레이어 마스크는 게임 내 특정 레이어를 선택하거나 제외하기 위해 사용됩니다.
레이어 마스크에 레이어 추가하기
특정 레이어를 레이어 마스크에 추가하려면 비트 연산자를 사용합니다. C#에서 레이어를 추가하는 방법은 다음과 같습니다:
||
||
위 코드는 originalLayerMask
에 layerToAdd
레이어를 추가하는 역할을 합니다.
레이어 마스크 설정
레이어 마스크를 설정하면 특정 레이어를 포함하거나 제외할 수 있습니다. 이때 OR
논리 연산자를 사용하여 변형된 값을 레이어 마스크에 적용합니다.
레이어 마스크에서 레이어 제거하기
레이어 마스크에서 특정 레이어를 제거하는 방법도 있습니다. 이때 비트 연산자의 AND NOT
연산을 사용할 수 있습니다.
추가 리소스
- Unity 사용자 매뉴얼
- 기술 자료 및 튜토리얼
- Unity 포럼
활용 예제
예제 1: 적의 공격 범위를 설정하기
적 캐릭터의 공격 범위를 특정 레이어에 맞출 수 있습니다. 공격 대상 레이어만 포함한 레이어 마스크를 생성하면 됩니다.
int enemyLayer = LayerMask.NameToLayer("Enemy");
int attackLayerMask = 1 << enemyLayer;
예제 2: 카메라의 시야 설정하기
카메라가 특정 객체만 보도록 하려면 카메라의 레이어 마스크를 조정할 수 있습니다.
Camera.main.cullingMask = LayerMask.GetMask("Player", "Environment");
테이블: 레이어와 기능
레이어 이름 | 레이어 설명 | 사용 예 |
---|---|---|
Player | 플레이어 캐릭터 레이어 | 플레이어 캐릭터의 움직임 제어 |
Enemy | 적 캐릭터 레이어 | 적의 공격 범위 설정 |
Environment | 환경 오브젝트 레이어 | 배경 및 지형 렌더링 설정 |
UI | 사용자 인터페이스 레이어 | UI 요소의 표시 여부 조정 |
Projectile | 발사체 레이어 | 발사체 및 총알 관리 |
이 문서에서는 Unity에서 레이어 및 레이어 마스크를 설정하는 방법과 함께 활용할 수 있는 몇 가지 예제를 다루었습니다. 추가적인 정보는 공식 Unity 문서 및 커뮤니티 자원을 참고하세요.