목차
-
강의
이 섹션을 시작하기 전에 이전 섹션인 Trigger를 사용하여 SoundBank 로드하기를 반드시 완료해주세요. |
게임 오브젝트들을 별도의 씬에 나눠 놓으면 여러 가지 장점이 있습니다. 한 가지 장점은 동시에 로드되는 에셋의 양을 최소화할 수 있다는 점이고, 또 다른 장점은 동시에 여러 가지 에셋을 조직적으로 활성화할 수 있다는 점입니다. 이전 섹션에서 'L3_1 - Loading SoundBanks using Triggers' Scene을 다시 열어서 Waterfall 게임 오브젝트를 사용하여 이 장점들을 직접 살펴볼까요?
Waterfall 게임 오브젝트는 폭포를 그래픽으로 렌더링합니다. 이 오브젝트의 하위 오브젝트인 Waterfall_UpClose 게임 오브젝트는 Ambient_Waterfall AkEvent를 가지고 있습니다. Ambient_Waterfall Event가 Woodlands SoundBank 안에 있기 때문에 적어도 Waterfall_UpClose 게임 오브젝트는 Woodlands 씬에 있어야 하는 게 맞겠죠. 하지만 따지고 보면 플레이어가 Woodlands 씬 안에 들어가기 전까지 Waterfall을 볼 수가 없기 때문에 Waterfall 게임 오브젝트 전체를 Woodlands Scene에다 넣는 것이 더 논리적입니다.
하위 게임 오브젝트의 위치는 상위 오브젝트를 기준으로 하기 때문에 소리의 위치 지정을 상쇄하지 않습니다. Wwise는 항상 게임 오브젝트에 상위 계층이 없는 것처럼 전역적인 공간에서 게임 오브젝트의 위치를 고려합니다. |
다음 단계에서는 Waterfall 게임 오브젝트를 Woodlands 씬으로 옮겨서 Waterfall 게임 오브젝트가 Woodlands Scene과 함께 활성화되고 로드되도록 해봅시다.
-
Project 뷰에서 Woodlands를 검색하고 Woodlands Scene을 Hierarchy로 드래그하세요.
-
Hierarchy에서 Waterfall 게임 오브젝트를 검색하여 선택하세요.
Waterfall 게임 오브젝트(Waterfall_UpClose 상위 오브젝트)는 플레이어가 Woodlands 지역 안에 있을 때만 로드해야 하기 때문에 Woodlands Scene으로 드래그해봅시다.
-
Waterfall 게임 오브젝트를 Woodlands Scene으로 드래그하세요.
이전에 구성한 나머지 Scene 구조가 씬 안에 있는 모든 것들을 언로드, 로드하기 때문에 이제 모든 작업이 끝났습니다. 이제 Profiler의 Voice Graph를 사용해서 게임을 프로파일링하고 Ambient_Waterfall Event가 Scene이 로드될 때 게시되고 중단되는지 지켜봅시다.
-
Wwise 메뉴에서 Layouts을 클릭하고 Profiler를 선택하세요.
-
Advanced Profiler의 Voices Graph 탭에서 Filter의 탐색 (...) 버튼을 클릭하세요.
-
Events > Ambient > SoundBankSpecific을 펼치고 Ambient_Waterfall Event를 선택한 후 OK를 클릭하세요.
필터를 Ambient_Waterfall Event로 선택하면 Voices Graph에서 Waterfall Event만 볼 수 있습니다. Play 모드를 시작하기 전에 Scene이 자동으로 로드되지 않게 제거해주세요.
-
Unity에서 먼저 Save 한 다음 씬을 Remove 하세요.
이 실습에서 게임을 프로파일링할 때는 Unity와 Wwise를 서로 나란히 두는 것이 좋습니다. 만약 스크린 해상도가 너무 낮을 경우 가장 필요한 Advanced Profiler를 분리해서 Unity 옆에 두셔도 됩니다.
-
Unity와 Wwise Project가 나란히 보이도록 조절하세요.
Unity Game 뷰에서 Play Maximized를 선택하면 Play 모드를 시작할 때 Unity 에디터의 가장자리로 확장되어 게임에서 쉽게 돌아다닐 수 있습니다. Play 모드를 실행한 채로 Pause를 누르면 일반 레이아웃이 일시적으로 복구됩니다.
-
Wwise에서 Remote를 클릭하세요.
-
Remote Connections 창에서 Wwise Adventure Game (Editor)를 선택한 후 Connect를 클릭하세요.
-
Play를 클릭하세요.
-
Main Camera는 안으로 들어가지 않도록 유지하면서 Woodlands Trigger 안으로 뛰어가세요.
Waterfall Event가 여전히 비활성화되었군요.
-
Woodlands Trigger 안에 있는 Main Camera를 회전시켜보세요.
Main Camera를 Woodlands Trigger 안쪽으로 돌리면 Woodlands Scene이 로드되어 Ambient_Waterfall Event가 게시됩니다.
빨간색 투명한 메쉬 표면이 보이지 않을 경우 Play 모드를 멈추고 이전 실습으로 가서 Woodlands Trigger를 다리와 가깝게 배치하세요.
-
Main Camera를 Woodlands Trigger 밖으로 회전시켜보세요.
Main Camera가 Woodlands Trigger 밖으로 나가면서, LoadSceneAsyncOnEnter 스크립트가 이를 인식하고 몇 초 후 씬과 Ambient_Waterfall Event를 언로드하고 제거합니다.
이렇게 게임 오브젝트를 씬으로 묶으면 프로파일러를 사용하여 본 것처럼 Event가 해당 SoundBank와 함께 로드/언로드되도록 할 수 있습니다. 이 강의의 뒷부분을 위해 Advanced Profiler의 Voices Graph 뷰를 초기화하고 Play 모드를 종료합시다.
-
Wwise에서 Filter 옆에 있는 탐색 버튼 (...)를 클릭하세요.
-
Filter의 가장 윗쪽에 있는 None을 선택하고 OK를 누르세요.
-
Unity에서 ESC를 눌러 WAG 메뉴를 열고 Play를 다시 클릭해서 Play 모드를 종료하세요.