목차

Wwise Unreal Integration Documentation
자주 묻는 질문

질문: Windows 시스템에서 Remote Build Options를 설정하여 iOS용 프로젝트를 빌드할 때 PackagingResults: Error: 'AK/AkWwiseSDKVersion.h' file not found라는 에러가 뜹니다. Wwise를 사용하여 UE4에서 iOS Remote Build 프로젝트를 작동할 수 있는 방법이 있나요?
답변: 이 오류는 Windows 시스템에서 iOS 프로젝트를 빌드하려고 할 때 필요한 일부 파일이 원격 macOS 시스템으로 복사되지 않아서 일어납니다. 이 문제를 해결하려면 /Build/Rsync/ 경로에 UE4가 필요한 파일을 복사하도록 지시하는 RsyncProject.txt 파일을 추가하세요. 다음 내용으로 RsyncProject.txt 파일을 작성해주세요.

+ /Plugins/Wwise/ThirdParty/include/**
+ /Plugins/Wwise/ThirdParty/iOS/**

Q: Unreal 에디터에서 혹은 게임을 쿠킹할 때 뱅크를 생성할 경우 뱅크가 어디에서 생성되나요?
A: 뱅크는 기본적으로 다음 위치에서 생성됩니다.

UE4/[GameName]/Content/WwiseAudio/[Platform]

언어 에셋을 담고 있는 일부 뱅크는 언어 전용 폴더에서 생성될 수도 있습니다.

Q: Wwise 애플리케이션에서 뱅크를 생성할 경우 Unreal Editor에서 뱅크를 생성할 때보다 생성되는 뱅크의 개수가 적습니다. 왜죠?
A: SoundBank 정의 파일을 가져올 때 Unreal이 Wwise가 Wwise 프로젝트에 없는 뱅크를 생성하도록 요청할 수 있습니다. Unreal이 생성한 뱅크를 Wwise 프로젝트 안에 유지되도록 하려면 SoundBank 정의 파일을 가져올 때 -Save 명령줄 전달인자를 추가하세요.

Q: Wwise SoundEngine 어떻게 하면 디버그 라이브러리를 사용하여 제 코드를 디버그할 수 있나요?
A: 기본적으로 Unreal Engine은 디버그 C Runtime Library를 사용하지 않지만 Wwise는 사용합니다. 디버그 모드에서 빌딩할 경우 이 상황이 연결 오류를 일으킬 수 있습니다. 바로 이러한 이유로 Wwise Unreal 통합은 기본적으로 프로파일 라이브러리를 사용합니다. 디버그 Wwise 라이브러리에 연결하고자 할 경우 <UE4_ROOT>/Engine/Source/Programs/UnrealBuildTool/Configuration/BuildConfiguration.cs 파일에서 bDebugBuildsActuallyUseDebugCRT 변수를 true 로 설정하세요.

Q: Xbox One에서 실행 중인 게임에 연결할 수 없으며 'Could not find Wwise network ports in AppxManifest. Network communication will not be available.'라는 오류가 뜹니다. 어떻게 하면 Wwise Authoring Application을 제 게임에 연결할 수 있나요?
A: 필요한 Wwise 네트워크 포트를 게임의 AppxManifest.xml에 추가해야 합니다. 그렇게 하려면 프로젝트 설정 (Edit > Project Settings)에서 Xbox One 플랫폼 설정을 다음과 같이 설정하세요.

Secure Socket Descriptions에서는 이 Xbox One 플랫폼 설정을 사용하세요
Secure Device Associations에서는 이 Xbox One 플랫폼 설정을 사용하세요

결과적으로 <GAME>/Config/XboxOne/XboxOneEngine.ini에 다음 줄이 들어가야 합니다.

+SecureSocketDescriptions=(SecureSocketName="WwiseDiscoverySocket",bAvailableInShippingBuilds=False,SecureSocketProtocol=Udp,SecureSocketPortRange="24024",bCanInitiateConnections=True,bCanAcceptConnections=True,bCanSendChatData=False,bCanReceiveChatData=False,bCanSendGameData=False,bCanReceiveGameData=False,bCanSendDebugData=True,bCanReceiveDebugData=True,bCanSendInsecureData=False,bCanReceiveInsecureData=False)
+SecureSocketDescriptions=(SecureSocketName="WwiseCommandSocket",bAvailableInShippingBuilds=False,SecureSocketProtocol=Tcp,SecureSocketPortRange="24025",bCanInitiateConnections=True,bCanAcceptConnections=True,bCanSendChatData=False,bCanReceiveChatData=False,bCanSendGameData=False,bCanReceiveGameData=False,bCanSendDebugData=True,bCanReceiveDebugData=True,bCanSendInsecureData=False,bCanReceiveInsecureData=False)
+SecureSocketDescriptions=(SecureSocketName="WwiseNotificationSocket",bAvailableInShippingBuilds=False,SecureSocketProtocol=Tcp,SecureSocketPortRange="24026",bCanInitiateConnections=True,bCanAcceptConnections=True,bCanSendChatData=False,bCanReceiveChatData=False,bCanSendGameData=False,bCanReceiveGameData=False,bCanSendDebugData=True,bCanReceiveDebugData=True,bCanSendInsecureData=False,bCanReceiveInsecureData=False)
+SecureDeviceAssociations=(SecureDeviceAssociationName="WwiseDiscovery",bAvailableInShippingBuilds=False,InitiatorSocketDescriptionName="WwiseDiscoverySocket",AcceptorSocketDescriptionName="WwiseDiscoverySocket",bCanInitiateFromConsole=True,bCanAcceptOnConsole=True,bCanInitiateFromXboxLiveCompute=True,bCanAcceptOnXboxLiveCompute=True,bCanInitiateFromWindowsDesktop=True,bCanAcceptOnWindowsDesktop=True,bCanInitiateFromOtherDevices=True,bCanAcceptOnOtherDevices=True)
+SecureDeviceAssociations=(SecureDeviceAssociationName="WwiseCommand",bAvailableInShippingBuilds=False,InitiatorSocketDescriptionName="WwiseCommandSocket",AcceptorSocketDescriptionName="WwiseCommandSocket",bCanInitiateFromConsole=True,bCanAcceptOnConsole=True,bCanInitiateFromXboxLiveCompute=True,bCanAcceptOnXboxLiveCompute=True,bCanInitiateFromWindowsDesktop=True,bCanAcceptOnWindowsDesktop=True,bCanInitiateFromOtherDevices=True,bCanAcceptOnOtherDevices=True)
+SecureDeviceAssociations=(SecureDeviceAssociationName="WwiseNotification",bAvailableInShippingBuilds=False,InitiatorSocketDescriptionName="WwiseNotificationSocket",AcceptorSocketDescriptionName="WwiseNotificationSocket",bCanInitiateFromConsole=True,bCanAcceptOnConsole=True,bCanInitiateFromXboxLiveCompute=True,bCanAcceptOnXboxLiveCompute=True,bCanInitiateFromWindowsDesktop=True,bCanAcceptOnWindowsDesktop=True,bCanInitiateFromOtherDevices=True,bCanAcceptOnOtherDevices=True)

Xbox One AppxManifest를 변경하는 법에 대한 더 많은 정보는 Unreal Engine 설명서를 참고해 주세요.

Q: iOS, XboxOne, Switch 장치로 배포하려고 할 때 게임이 멈춰버립니다. 왜죠?
A: Unreal Engine 내장 오디오 시스템을 비활성화해야 합니다. 그렇게 하려면 플랫폼에 알맞은 설명을 따라해 주세요:

플랫폼 설명
iOS <UE4_ROOT>/Engine/Config/iOS/IOSEngine.ini에서
AudioDeviceModuleName=IOSAudio
AudioDeviceModuleName=
XboxOne <UE4_ROOT>/Engine/Config/XboxOne/XboxOneEngine.ini에서
AudioDeviceModuleName=XAudio2
AudioMixerModuleName=AudioMixerXAudio2
AudioDeviceModuleName=
AudioMixerModuleName=
Switch <UE4_ROOT>/Engine/Config/switch/BaseSwitchEngine.ini에서 replace
AudioDeviceModuleName=SwitchAudio
AudioDeviceModuleName=

Q: 패키징된 게임을 실행할 경우 일부 혹은 모든 사운드가 누락됩니다. 왜죠?
A: 새로운 기능: Event-Based Packaging 를 사용하지 않을 경우 Wwise 플러그인이 게임 콘텐츠 폴더의 WwiseAudio 폴더 안에 SoundBank를 생성합니다. .bnk 파일은 Unreal에 의해 인식되지 않기 때문에 WwiseAudio 폴더가 게임 패키징 설정에서 'Additional non-asset directory to package'로서 추가됩니다. 그렇기 때문에 Unreal .uasset 파일 (AkAudioEvent와 AkAudioBank 포함)이 잘못하여 두 번 패키징되지 않도록 WwiseAudio 폴더 안에 넣지 말아야 합니다.

새로운 기능: Event-Based Packaging 를 사용할 경우 자주 겪는 문제 WG-48803 문제가 일어날 수 있습니다. Event에서 Post Event Action을 사용할 경우 게시되는 Event를 패키징된 게임에서 찾지 못할 수 있습니다. 또한 Switch Container 미디어 분할하기 기능을 사용할 경우 Event에서 Set Switch나 Set State Action을 사용하게 되면 일부 미디어가 패키징되지 않을 수 있습니다. 문제를 피해 작업하려면 WG-48803이 해결될 때까지 Switch Container 미디어 분할하기 기능을 비활성화하세요.