뱅크(bank)는 게임의 오디오 데이터가 담겨있는 파일입니다. 뱅크는 Wwise Authoring에서 사운드 디자이너가 SoundBank Manager를 이용해 생성합니다. 또한 자동화 처리를 통해 정의하거나 생성할 수도 있습니다.
뱅크에는 두 가지 종류가 있습니다.
- Initialization 뱅크: 이 뱅크에에는 컨트롤 버스 계층 구조, State, Switch, RTPC 같이 프로젝트의 모든 일반적인 정보가 들어 있습니다. Initialization 뱅크는 Wwise가 SoundBank를 생성할 때 자동으로 생성됩니다. 한 프로젝트에는 하나의 Initialization 뱅크만 있으며,
Init.bnk
라는 이름으로 돼있습니다.
- SoundBank: SoundBank에는 게임에서 사운드를 재생하는 데 필요한 Event 데이터가 들어있습니다. SoundBank에는 자동 정의형(auto-defined)과 사용자 정의형(user-defined)의 두 가지가 있으며, 두 유형을 단독이나 조합하여 사용할 수 있습니다. 이러한 다양한 SoundBank 유형은 메모리 사용량, 파일 패키징, 파일 크기 및 SoundBank 로딩 방법에 각기 다른 영향을 미칩니다.
- 자동 정의 SoundBank: 자동 정의 SoundBanks가 자동으로 생성됩니다. 사용자 정의 사운드뱅크에 포함되지 않은 각 Event 및 Auxiliary Bus에 대해 별도의 SoundBank가 생성됩니다. 각 SoundBank에는 Event와 구조 정보만 포함되고 미디어는 SoundBank 외부에 저장됩니다. 따라서 여러 Event에서 동일한 미디어 애셋을 사용하는 경우 해당 미디어 애셋은 디스크에만 생성되고 한 번만 로드됩니다. 따라서 자동 정의 SoundBank는 Wwise 사용자가 최소한으로 관리할 필요가 있으며 파일 크기도 최소화됩니다.
- 사용자 정의 SoundBank: 사용자 정의 사운드뱅크에는 여러 개의 Event와 이를 재생하는 데 필요한 모든 오브젝트 및 오디오 데이터가 포함될 수 있습니다. 사운드 디자이너는 Wwise Authoring에서 원하는 수의 SoundBank를 생성하고 Event, 구조, 미디어를 추가할 수 있습니다. 게임 레벨 편집기와 같은 외부 프로그램에서 자동으로 생성할 수 있는 SoundBank 정의 파일을 가져와 Wwise에서 사용자 정의 SoundBank를 생성할 수도 있습니다. 사용자 정의 SoundBank가 생성되면 Wwise는 각 SoundBank에 포함된 Event에서 사용되는 모든 Actor-Mixer, Container, Sound 등을 패키징합니다. SoundBank에 있는 일부 사운드가 보이스인 경우, Wwise 프로젝트에서 지원하는 각 언어별로 다른 버전의 SoundBank가 생성됩니다.
게임은 Initialization 뱅크를 가장 먼저 불러와야 합니다. 그런 다음 필요에 따라 SoundBank를 로드하거나 언로드할 수 있습니다. 게임 중에 트리거되는 Event에 따라 로드되는 SoundBank가 결정됩니다. 자동 정의 SoundBank를 사용하면 각 Event가 자체 SoundBank를 로드하지만 공유 미디어 애셋은 한 번만 로드됩니다. 사용자 정의 SoundBank를 사용하면 각 Event가 해당 SoundBank를 로드합니다. 해당 SoundBank에 당시에는 필요하지 않은 다른 Event(및 관련 미디어 애셋)가 많이 포함되어 있어도 마찬가지입니다.