LoadBank() 메커니즘의 몇 가지 단점을 극복하려면 AkBankContent_All()을 사용해서 SoundBank를 불러오는 대신 뱅크를 준비해 놓으면 됩니다. 이 방법을 사용할 경우 SoundBank에 여전히 모든 콘텐츠 유형(Event, 구조 데이터, 미디어 파일)이 들어 있을 수 있지만, 이 방법은 미디어 파일을 명시적으로 불러오는 대신 PrepareEvent() 방법을 통해 모든 미디어를 메모리에 불러옵니다. 이 방법을 사용하여 미디어를 불러오면, Wwise는 미디어 파일을 불러오기 전에 먼저 이 미디어 파일이 이미 메모리에 있는지를 확인합니다. 이 방법은 메모리에 미디어 파일이 복제되는 것을 막아주기 때문에 메모리 사용량을 최소한으로 유지해줍니다.
또한, 이 방법은 메모리 절약 뿐만 아니라 디스크 접근이 순차적으로 이루어지도록 보장합니다. 이 방법을 사용하면 PrepareEvent()를 통해서 Event가 하나씩 준비될 때 일어날 수 있는 랜덤한 디스크 탐색을 방지할 수 있습니다.
다음 그림은 '뱅크 준비하기(모든 콘텐츠)' 메커니즘이 어떻게 메타데이터와 콘텐츠를 플랫폼 메모리에 불러오는지를 보여줍니다.
Vorbis로 인코딩되거나 Opus로 인코딩된 미디어가 있는 SoundBank를 불러올 경우 Preparation_LoadAndDecode 준비 유형을 통해 이러한 미디어 파일을 압축되지 않은 PCM으로 디코딩할 수 있습니다. 이 경우 결과적으로 SoundBank는 더 커지지만 Event가 미디어를 호출할 때 디코딩할 필요 없이 즉시 미디어를 재생할 수 있습니다.
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요