Unity에서 열쇠로 문을 여는 튜토리얼
많은 게임 시나리오에서 키로 문을 잠금 해제하고 여는 것은 일반적인 게임플레이 요소입니다. 이 Unity 튜토리얼에서는 열쇠를 사용하여 열 수 있는 간단한 문을 만드는 과정을 살펴보겠습니다. 우리는 스크립팅, 이벤트 트리거 및 반응형 도어 시스템 생성의 기본 Unity 개념을 다룰 것입니다.
전제조건
1단계: 장면 및 자산 생성
- Unity을 열고 새 3D 프로젝트를 만듭니다(아직 만들지 않은 경우).
- 간단한 door 모델을 가져오거나 자리 표시자로 큐브를 생성하고 주요 모델을 프로젝트에 가져옵니다.
2단계: 문과 열쇠 설정
- 장면에 door 및 key를 배치합니다.
- Box Collider 구성 요소를 문의 상위 개체에 추가하고 필요한 영역을 포함하도록 크기를 조정한 다음 "Is Trigger" 매개변수를 확인합니다.
- 충돌 감지를 활성화하려면 주요 GameObject를 추가하세요.
3단계: DoorScript 작성
'DoorScript.cs'
using UnityEngine;
public class DoorScript : MonoBehaviour
{
public GameObject key;
private bool isLocked = true;
private void OnTriggerEnter(Collider other)
{
if (other.gameObject == key && isLocked)
{
OpenDoor();
}
}
private void OpenDoor()
{
// Add door opening animation or simply change the door's position.
transform.Translate(Vector3.up * 2f); // Adjust the value based on your door's size.
isLocked = false;
}
}
- "Is Trigger"이 선택된 Box Collider를 사용하여 'DoorScript'을 객체에 연결합니다.
- 'DoorScript'의 'Key' 변수에 키 개체를 할당합니다.
설명:
- 'OnTriggerEnter'을 사용하여 키와의 충돌을 확인합니다.
- 충돌한 객체가 열쇠이고 문이 잠겨 있는 경우 'OpenDoor' 메서드가 호출됩니다.
- 'OpenDoor' 메서드에는 애니메이션 재생이나 문 위치 변경과 같은 사용자 정의 문 열기 로직이 포함될 수 있습니다.
4단계: 주요 게임오브젝트 설정
- 물리적 상호 작용을 활성화하려면 주요 GameObject에 Rigidbody 구성 요소를 연결하세요.
- 키 GameObject에 Sphere Collider(또는 키에 맞는 모든 충돌체)를 추가하세요.
5단계: 테스트
- 상호작용을 테스트하려면 Unity에서 재생을 누르세요.
- 문 Box Collider 내에서 키를 이동합니다.
결론
Unity의 키를 사용하여 간단한 문 잠금 해제 시스템을 성공적으로 만들었습니다. 이 튜토리얼에서는 기본 사항을 다루며, 더 많은 기능과 애니메이션을 추가하거나 게임 요구 사항에 따라 게임플레이 메커니즘을 개선하여 기본 사항을 확장할 수 있습니다.