Wwise SDK 2021.1.14
|
플러그인 미디어 시스템을 이용하면 플러그인(효과, 음원, 싱크, 믹서)에서 Wwise 아키텍처를 활용해 프로젝트 내 이진 데이터 파일을 저장할 수 있습니다.
플러그인에서 커스텀 데이터를 사용하는 대신 플러그인 미디어를 사용하면 다음과 같은 다양한 장점이 있습니다.
자신의 플러그인 백엔드에서 AK::Wwise::Plugin::RequestObjectMedia
를 상속받아 Object Media 서비스를 요청할 수 있습니다. 그러면 m_objectMedia
멤버가 제공돼 해당 서비스의 메소드에 접근할 수 있습니다. To receive notifications about the object media, such as when it has been changed by the user, derive from AK::Wwise::Plugin::Notifications::ObjectMedia
and override the AK::Wwise::Plugin::Notifications::ObjectMedia::NotifyPluginMediaChanged()
method.
AK::Wwise::Plugin::ObjectMedia::SetMediaSource()
를 호출해 미디어 파일을 가져올 수 있습니다. 미디어를 가져올 때, 해당 미디어는 플러그인의 "Originals" 디렉터리에 복사되어 전적으로 Wwise가 관리하게 됩니다. 인덱스 0에서 플러그인 미디어 파일을 추가하려면:
해당 코드 다음으로, AK::Wwise::Plugin::ObjectMedia::InvalidateMediaSource()
를 호출해 미디어 파일 변환을 요청합니다.
플러그인 데이터가 변경되었을 때 알림을 받기 위해 NotifyPluginMediaChanged
함수를 오버라이드합니다.
더 자세한 정보은 AK::Wwise::Plugin::ObjectMedia
함수의 설명 문서를 참고하세요.
가져온 원본 WAV 미디어를 실시간 컴포넌트에 적합한 형식으로 런타임 때 변환해야할 경우가 있습니다. 변환 함수를 구현하기 위해서는 AK::Wwise::Plugin::MediaConverter
로부터 상속하여 필요한 함수를 구현합니다.
AK::Wwise::Plugin::MediaConverter::ConvertFile
AK::Wwise::Plugin::MediaConverter::GetCurrentConversionSettingsHash
다음은 AK::Wwise::Plugin::MediaConverter
함수의 구현 예시입니다.
플러그인 정의 파일에 (예: 플러그인 XML 파일), CanReferenceDataFile
요소가 true
로 설정돼있는지 확인합니다.
자신의 플러그인의 Sound Engine 부분에서, AK::IAkEffectPlugin
을 구현하면 Init(...)
함수에서 AK::IAkEffectPluginContext
포인터를 받게 됩니다. AK::IAkEffectPluginContext
로부터 AK::IAkPluginContextBase::GetPluginMedia
를 호출하여 Wwise SoundBank에 패키징된 변환된 미디어를 구할 수 있습니다.
참고: 이 예제에서는 런타임 때 effect 플러그인 미디어를 사용하는 방법을 설명합니다. 그러나 source plug-in 과 같이 다른 플러그인 타입을 사용하는 방법도 보여줍니다. 이 경우, AK::IAkSourcePlugin 을 구현하고 AK::IAkSourcePluginContex 포인터를 받게 됩니다. |
Wwise에서, 모든 Effect는 Init.bnk에 저장됩니다. Init.bnk의 크기를 최소화하기 위해 플러그인 미디어는 Init.bnk에 자동으로 추가되지 않습니다. Effect ShareSet나 버스를 각각 별개의 SoundBank에 직접 추가해줘야 합니다.
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요