버전

menu_open

Action Event 준비하기

PrepareEvent() 방법은 꼭 필요할 경우에만 미디어를 동적으로 불러옵니다. 이 방법을 사용할 때에는 Action Event 메타데이터가 반드시 SoundBank에 들어 있어야 하며 연결된 미디어 파일을 반드시 파일 시스템에서 접근할 수 있어야 합니다. 해당 구조 메타데이터는 동일한 SoundBank에 Event로 들어가거나 별도의 SoundBank에 들어갈 수 있습니다. 이 방법을 사용하면 Action Event 메타데이터를 담고 있는 SoundBank가 LoadBank()를 통해 메모리에 올라가 유지됩니다. 게임이 Action Event를 호출하기 전에 이 이벤트는 사운드 엔진에 의해 '준비'됩니다. Event를 준비하면 참조된 모든 미디어 파일을 파일 시스템에서 불러오며, 이미 불러오지 않은 경우 참조된 모든 구조 메타데이터도 SoundBank에서 불러옵니다. Action Event가 더 이상 필요 없을 경우 이 이벤트를 '준비 해제'하여 해당 미디어 파일을 메모리에서 제거할 수 있습니다. 메모리 사용량을 최소한으로 유지하고 메모리에서 미디어 파일의 복제를 방지하기 위해서 Wwise는 미디어 파일을 불러오기 전에 이 미디어 파일이 이미 메모리에 있는지를 확인합니다.

[참고] 참고

Action Event만 미리 준비할 수 있습니다. 'PrepareEvent()' 방법은 Dialogue Event에 사용할 수 없습니다.

다음 그림은 Event가 미리 준비되어 필요한 미디어 파일만 메모리로 올리는 법을 보여줍니다.

메타데이터(구조라고도 불림)가 Event와 동일한 SoundBank에 저장되지 않은 경우 Wwise는 다른 SoundBank에 저장된 데이터를 찾는 방법을 필요로 합니다. 그래서 Wwise는 다른 SoundBank에 저장된 해당 콘텐츠의 참조를 담습니다. 이름이나 ID를 사용해서 다른 SoundBank를 참조할 수 있는 것이죠. 사운드 엔진에서 SoundBank의 이름을 사용하려면 반드시 Project Settings의 SoundBanks 탭에서 Use SoundBank Names 옵션을 선택해야 합니다. ID를 사용하려면 이 옵션을 선택 해제하세요. 더 자세한 정보는 “SoundBanks Tab”을(를) 참조하세요.

SoundBank가 참조하는 미디어는 반드시 디스크에 루스 파일(loose file)로 저장되거나 (File Package와 같은) 저수준 IO로 해석할 수 있어야 합니다.

이 방법은 일반적으로 메모리 사용량에 있어 아주 효율적이지만 추가적인 디스크 탐색을 필요로 하기 때문에 이미 디스크에서 많은 파일이 스트리밍될 경우 적절하지 않습니다. 또한, 게임이 State와 State를 사용할 경우 미디어 파일이 불필요하게 메모리에 올라갈 수가 있습니다. 예를 들어 게임에서 관중의 기분이나 에너지의 수준에 따라 여러 가지 관중 소리를 가질 경우, 게임의 어떤 구역에서는 화가 난 Switch 소리만 사용한다면 그 외 모든 소리를 굳이 메모리에 올릴 필요가 없습니다. 이 문제를 해결하려면 특정 State나 Switch를 '준비'시켜 준비된 State나 Switch에 연결된 미디어 파일만 불러오도록 하면 됩니다.

다음 그림은 Switch가 미리 준비되어 게임의 특정 시점에서 메모리에 불러오는 미디어의 양을 더 제한할 수 있는 방법을 보여줍니다.

Game Sync를 미리 준비하면 메모리 사용량을 최적화할 수 있지만, 이 경우 미디어를 메모리에 불러오는 속도도 감소된다는 점을 주의하세요. 준비된 Game Sync에 해당하는 소리를 찾기 위해서 사운드가 디스크를 탐색해야 하기 때문에 읽기 시간이 더 길어집니다.

이 두 번째 방법은 필요한 오디오 파일만 동적으로 불러오기 때문에 게임에 수많은 사운드가 들어간 아주 넓은 구역이나 레벨이 존재하거나 Event 데이터, 구조 데이터, 미디어를 저할 수 있는 메모리가 제한되어 있는 상황에서 굉장한 유연하게 처리할 수 있는 해결법이 됩니다.

보시다시피 각 방법마다 장단점이 있습니다. 그렇기 때문에 특정 상황이나 게임의 요구 사항 및 제약에 따라 알맞은 방법을 선택해야 합니다. 사용할 전략을 결정했다면 하나 이상의 방법을 사용하여 SoundBank의 내용을 이에 맞게 채운 후 미세 조정할 수 있습니다.

[참고] 참고

LoadBank, AkBankContent_All, PrepareEvent, PrepareGameSyncs, AkBankContent_StructureOnly 기능은 Wwise API에서 접근할 수 있습니다. SoundBank 불러오기와 Event 및 Game Sync 준비하기에 대한 더 많은 정보는 Wwise SDK의 뱅크 통합하기 섹션을 참조하세요.

SoundBank를 관리하는 여러 가지 방법에 대한 자세한 개요는 “SoundBank 관리 전략”을(를) 참조하세요.


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요