목차
이 섹션을 시작하기 전에 먼저 상위 섹션인 Trigger 조건을 완료해주세요. |
Trigger가 게임 오브젝트에 추가되면 Trigger는 다른 Trigger와 Collider와의 모든 접촉을 AkTriggerEnter 함수에 보고합니다. 다시 말해 어떤 Collider나 Trigger 타입을 보고해야 하는지 지정하지 않을 경우 301_Coin과 같은 게임 오브젝트는 플레이어가 Trigger 안으로 들어와 동전을 주울 경우 뿐만 아니라 다른 모든 Trigger와 교차할 때마다 Pickup_Coin Event를 재생하게 됩니다. 이 문제를 해결하는 한 가지 방법은 AkTriggerEnter 스크립트를 301_Coin 게임 오브젝트에 추가하는 것입니다.
AkEvent를 AkTriggerEnter에 설정하면 AkEvent는 게임이 시작될 때 AkTriggerEnter 스크립트를 찾게 됩니다.
AkTriggerEnter 컴포넌트에는 Trigger Object 프로퍼티가 있습니다. 이 프로퍼티가 비어 있을 경우 모든 충돌 사항을 다 인식하게 되겠죠. 이 프로퍼티에 게임 오브젝트를 추가하면 컴포넌트가 특정 게임 오브젝트에만 반응하도록 제한해서 다른 모든 게임 오브젝트를 무시할 수 있습니다.
AkTriggerEnter의 Trigger Object에 다른 Scene에 있는 게임 오브젝트를 지정할 수는 없습니다. 만약 그렇게 해야 할 경우 사용자 정의 스크립트를 만들어서 해당 게임 오브젝트를 사용할 수 있을 때 찾도록 만들 수 있습니다. |
이제 AkTriggerEnter 스크립트를 Coin에 추가해서 Player가 동전을 주울 때만 소리가 트리거되도록 해봅시다.
-
Hierarchy에서 301_Coin 게임 오브젝트를 선택하세요.
-
Inspector에서 'AkTriggerEnter' Component를 추가하세요.
AkTriggerEnter 컴포넌트에서 비어있는 Trigger Object 프로퍼티를 찾으세요. 힘들게 아이템을 줍는 주체는 모험가이니 Player를 선택합시다. Trigger Object 프로퍼티를 구성하지 않으면 모든 게임 오브젝트가 감지됩니다.
-
Hierarchy에서 Player 게임 오브젝트를 클릭하여 Inspector > AkTriggerEnter component > Trigger Object 프로퍼티로 드래그해 놓으세요.
-
Play를 클릭하고 Coin을 주워보세요.
플레이어가 Coin을 주울 경우에만 Coin 줍기 소리가 게시되는 것이 들리실 것입니다.
-
ESC를 눌러 WAG 메뉴를 연 후 Play를 다시 클릭해서 Play 모드를 종료하세요.