Wwise SDK 2022.1.18
|
많은 콘솔이 게임 음악을 개인 라이브러리에 있는 사용자의 음악으로 대체하는 기능을 지원하고 있습니다. Wwise에서는 이 기능이 거의 자동으로 처리됩니다. 그러나 일부 플랫폼에서는 구현 방식과 작동 방식에 다소 차이가 있습니다.
모든 플랫폼에서 초기 설정은 동일합니다. 즉, 사용자 음악을 재생할 때 음소거될 버스를 사운드 디자이너가 태그해줘야 합니다. 이를 위해서는 "Mute for Background Music" 체크 상자를 클릭하면 됩니다. 코드 단에서는, 플랫폼에 따라 일부 추가적인 세부 사항이 필요합니다.
AkPlatformInitSettings 의 jActivity 멤버를 반드시 채워 넣어야 합니다. Mute/Unmute 동작은 사용자가 음악 플레이어 앱에서 게임으로 전환할 때에만 일어납니다. 다시 말해 사용자 음악이 자체적으로 종료될 경우 'Unmute(뮤트 해제)'가 일어나지 않습니다.
게임 음악을 외부 음악 애플리케이션으로 교체하는 것은 애플리케이션이이 "mixable(혼합 가능한)"오디오 세션 구성을 사용하는 경우에만 가능합니다. 다음과 같이 혼합 가능한 오디오 세션이 있는 두 가지 방법이 있습니다.
다른 구성은 게임이 포그라운드에 있을 때 사용자의 음악 애플리케이션을 중지합니다.
일부 플랫폼에는 게임 사용자가 플레이하는 장면을 녹화해 배포할 수 있는 DVR 기능이 있습니다. 이 기능은 게임 오디오나 사용자가 교체한 음악의 저작권에 관련해 법적 문제를 일으킬 수 있습니다. 게임 개발사는 게임 내에 해당 음악을 사용할 권리는 있지만 최종 사용자는 이 음악을 어떠한 형태로든 배포할 권리가 없을 수 있습니다. 이에 따라 대부분의 플랫폼 요구 사항에는 사용자 백그라운드 음악을 녹음하면 안 된다는 내용이 명시돼있습니다.
이 문제를 CPU 비용적인 측면에서 효율적으로 해결할 수 있는 방법은 게임의 다른 부분과 음악을 구분하여 따로 믹싱하는 것입니다. 이는 Secondary Output 기능을 사용하면 가능합니다.
저작 도구에서, 기본 설정이나 주요 오디오 버스 대신 별도의 Master Audio Bus로 자신의 음악 오브젝트를 라우팅해야 합니다. 대부분의 프로젝트의 경우, 이는 곧 완전히 새로운 Master Audio Bus를 생성한다는 뜻입니다 (Master Mixer Hierarchy의 Work Unit 우클릭 후 Add > Child 선택). 모든 버스는 System 출력으로 라우팅되도록 기본 설정되어 있습니다. Audio Device ShareSet 가 DVR 출력을 가리키도록 변경하세요.
모든 플랫폼이 DVR을 지원하진 않는다는 사실을 기억하세요. 이러한 플랫폼에 대해서는 Audio Device 속성을 Unlink해 System 출력으로 가리켜야 합니다. 또는 다른 방법으로, 해당 음악 오브젝트의 Output Bus 속성을 Unlink할 수도 있습니다.
게임에서 DVR 출력을 사용할 경우, 이를 수작업으로 추가해줘야 합니다. 그러기 위해서는 AK::SoundEngine::AddOutput()
를 이용해 Audio Device ShareSet 이름 (또는 ID)을 다른 매개 변수와 함께 AkOutputSettings
로 전달합니다.
<Wwise installation path>/SDK/samples/IntegrationDemo/DemoPages/DemoBGM.cpp에서 예제를 확인하세요.
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요