Wwise SDK 2024.1.0
|
2019.2 버전 새로운 기능이 추가됨에 따라, Wwise 2019.2(으)로 마이그레이션할 때 다음 사항에 주의하시기 바랍니다.
더 이상 Visual Studio 2013을 지원하지 않기 때문에, 사운드 엔진의 Windows 런타임 DLL의 프리컴파일된 버전을 위해선 Visual Studio 2017용 Windows SDK로 Wwise를 설치해야 합니다.
이제 Authoring(저작)을 빌드하는데 Visual Studio 2015 대신 Visual Studio 2019를 사용합니다. Visual C++ 재배포는 Visual Studio 2015, 2017 및 2019에도 동일하게 적용되므로 플러그인 개발시 이 중 어느 것을 택해 컴파일하든 상관 없습니다. 참고로, Audiokinetic은 Visual Studio 버전 16 기반의 vc160에 Visual Studio 2019 툴셋을 참조합니다. 그러나 툴셋의 공식 버전은, Visual Studio 2015 툴셋 (vc140) 및 2017 (vc141)과 호환되는 vc142입니다. 동일한 이유로 Audiokinetic은 vc141을 참조할 때 vc150을 사용합니다.
올바른 컴파일을 위해 이제 Wwise SDK 헤더는 유효한 C++11을 필요로 합니다. 지원되는 컴파일러 목록은 플랫폼 요구 사항 을 참고하세요.
Wwise Authoring 애플리케이션이 생성하는 텍스트 파일의 인코딩 형식이 이제 UTF-8이 되었습니다. ANSI와 Unicode 중에서 인코딩 형식을 선택하는 옵션은 삭제되었습니다. 선/후-SoundBank 생성을 위해 제공되던 내장 매크로 ContentFileFormat 는 추후 버전에서 사용 중단되어 삭제될 예정입니다. 2019.2 버전에서는 항상 'Unicode' 값을 제공하게 됩니다. 또한, SoundFrame으로 전달된 SoundBank 생성 설정은 AK::SoundFrame::SoundBankGenerationSettings::eContentTxtFileFormat 을 무시하고 AK::SoundFrame::SoundBankContentTxtFileFormat_UNICODE 를 기본 설정으로 합니다.
사운드뱅크의 PluginInfo.json 메타데이터 파일이 이제 다른 형태로 구성됩니다. 'Plugin'은 이제 중복되는 키로 맵 안에 맵이 아닌, 맵 안에 배열로 됩니다. 일부 JSON 리더가 이전 형식에서는 데이터를 제대로 파싱할 수 없었습니다.
Memory 카테고리 교체 및 메모리 풀 확장 에 변경된 내용에 따라, 몇몇 관련 인터페이스가 수정되었습니다.
AK::MemoryMgr 인터페이스 (AkMemoryMgr.h) 관련 변경사항:
디버깅 함수인 AK::MemoryMgr::CheckForOverwrite 와 AK::MemoryMgr::DumpToFile 삭제.
AK::MemoryMgr (AkModule.h)의 기본 구현 관련 변경 사항.
그 밖에 다른 인터페이스에서 풀 삭제로 인한 변경 사항:
AK::IAkStdStream 의 커스텀 구현을 사용하고 있다면, 해당 인터페이스에 명시된 새로운 함수인 AK::IAkStdStream::WaitForPendingOperation()
를 반드시 구현해야 합니다. 이는 처리를 차단해 보류 중인 I/O가 완료되었을 때에만 반환하며, 스트림의 새로운 상태를 반환합니다.
Wwise 2019.2에는 Spatial Audio의 기존 수정 사항이 포함돼있습니다. 이번 릴리즈 버전은 작업 과정을 간소화하고 Spatial Audio의 통합과 사용을 단순화시키며 성능과 확장성을 크게 향상시켰습니다. 안타깝게도 이런 수정 사항들로 인해 2019.2와 직접적인 연관성이 없는 2019.1의 기존 프로젝트와 일부 기능이 지장을 받을 수 있으며, *수작업 마이그레이션*이 필요할 수 있습니다. 이 안내서는 2019.1에서 2019.2로 전환하려는 사용자들에게 중요한 길잡이가 되어 왜 이러한 수정이 필요했는지, 그리고 이로 인해 전반적인 사용 측면에서는 어떤 이점이 있는지에 대한 이해를 돕습니다.
Wwise의 가장 큰 핵심은 사운드 디자이너에게 힘을 실어주어 프로그래머에 대한 의존도를 낮추는 것으로, 게임 엔진이 아니라 Wwise 저작 도구에서 디자이너들이 스스로 Spatial Audio 환경 설정을 직접 구성할 수 있도록 만드는 것은 지극히 당연한 일입니다. 다음은 Wwise 내 사운드와 버스 오브젝트에 추가된 속성들입니다.
이제 프로젝트에서 직접 설정 내용을 지정할 수 있게 됨에 따라, Spatial Audio 속성을 정의하고 그에 따라 처리가 필요한 오브젝트에서 사운드가 언제 재생될 것인지를 Spatial Audio 런타임에서 알 수 있습니다. 이와 함께, 더 이상 게임 오브젝트를 'Spatial Audio Emitter'로 등록할 수 없게되었으며, AkEmitterSettings 또한 삭제되었습니다. 더 접근하기 쉽고 사용이 편리한 Spatial Audio를 만들기 위한 노력의 일환으로서, AkEmitterSettings 보다 적게 저작 도구에 fewer settings 이 있습니다. 다음은 AkEmitterSettings 의 각 필드를 마이그레이션하고 이 새로운 값을 Wwise 프로젝트에서 어디에 설정할 것인지 알려주는 가이드입니다.
Wwise 2019.1 및 그 이전 버전에서는 사운드 엔진의 API와 중복되는 Spatial Audio의 수많은 API가 있었지만 Spatial Audio 이미터로 등록된 게임 오브젝트에 한정해서만 적용되는 경우가 많았습니다. 이는 매우 혼란스러울 뿐만 아니라 제대로 된 API를 호출했는지 확신하는데도 어려움이 있었습니다. 2019.2에서는 더 이상 이미터를 등록할 필요가 없어졌기 때문에 다음 API가 삭제되었습니다.
대부분의 경우, 사용자는 Wwise Authoring Tool에서 공간 버스에 적용된 감쇠를 모두 제거해야 합니다. Wwise 2019.2의 Spatial Audio는 사운드의 감쇠에 이미터와 리스너 간 전체 경로 거리를 적용하기 때문에, 공간 오브젝트에는 더 이상 감쇠가 필요 없습니다.
사용자들이 Wwise 2019.2 이전 버전에서 포털을 사용할 때 주로 마주치는 문제는, 서로 다른 감쇠가 있는 두 사운드의 상대 믹스에서 포털을 통해 전달되는 잔향이 일정하지 않았다는 것입니다. 짧은 감쇠가 있는 발자국과 긴 감쇠가 있는 총소리가 동일한 포털을 통해 재생되는 경우를 예로 들어보겠습니다. 두 소리는 포털이 있는 장소에서 함께 믹싱되고 같은 위치에서 다시 공간화되었습니다. 사운드의 감쇠는 이미터와 포털 간 거리로 평가되었습니다. 이는 이미터와 리스너 간 전체 거리의 일부분에 불과했으며, Spatial Audio는 포털의 감쇠에 의존해 잔향을 감쇠했었습니다. 결과적으로 리스너가 포털에서 멀어짐에 따라, 사운드의 원본 감쇠 곡선이 결정하는 대로 발자국이 총소리보다 더 빨리 디케이(decay)되는 대신 두 사운드의 상대 볼륨이 동일하게 머물러있게 됩니다. 이는 변조 경로(wet path)와 직접 경로(direct path) 간 작동이 의도한 바대로 이뤄질 경우에 한해서 발생하는 문제라는 점을 참고하세요.
Wwise 2019.2의 Spatial Audio에서는 포털의 '픽업 (pickup)' 위치를 리스너와 동일한 위치에 효과적으로 배치함으로써 이 문제를 해결했습니다. 이런 방식을 통해, 공간의 3D 버스에 사운드를 믹싱해넣기 이전에 음원과 리스너 간 경로의 전체 거리가 사운드의 감쇠 곡선에 적용됩니다. 포털(즉, 공간 버스)에 적용된 감쇠가 더 이상 필요 없어졌지만, 여전히 사용하고자 하는 경우가 있을 수 있습니다. 믹싱 후 감쇠는 잔향의 볼륨을 줄이거나 포털을 통과하는 잔향에 추가 필터링을 적용할 수 있습니다.
WwiseConsole로 인해 WwiseCLI가 사용 중단됩니다. 여전히 WwiseCLI는 이전과 같이 제공되고 동작합니다. WwiseCLI에서 하던 모든 기능들은 WwiseConsole에서 여전히 사용 가능하며, 다만 구문의 차이가 있을 뿐입니다. 앞으로 등장할 새로운 기능들은 오직 WwiseConsole에만 추가될 예정이므로 WwiseConsole로 마이그레이션하기를 권장합니다.
WwiseConsole은 스스로 문서를 만듭니다. 매개 변수 없이 WwiseConsole을 실행하면 지원되는 작업의 목록을 열거합니다. 거기서 원하는 작업에 대한 도움말을 열 수 있습니다. WwiseConsole의 문서는 SDK 문서에도 포함돼있으며, 온라인과 오프라인 버전으로 제공됩니다.
예를 들어 SoundBank 생성에 대한 도움말을 열려면
WwiseConsole generate-soundbank --help
를 이용합니다.
표준 구문은
WwiseConsole operation project --option1 valueOfOption1 --option2 valueOfOption2
입니다.
다음은 WwiseCLI 구문과 새로운 WwiseConsole 구문을 비교한 몇 가지 예시입니다.
Windows와 Linux 플랫폼 전용 SoundBank 생성.
WwiseCLI C:\MyProject\MyProject.wproj -GenerateSoundBanks -Platform Windows -Platform Linux
WwiseConsole generate-soundbank C:\MyProject\MyProject.wproj --platform Windows Linux
Verbose 로그로 WAAPI 서버 실행.
WwiseCLI C:\MyProject\MyProject.wproj -Waapi -Verbose
WwiseConsole waapi-server C:\MyProject\MyProject.wproj --verbose
Windows와 LInux 플랫폼을 지원하는 새로운 프로젝트 생성.
WwiseCLI C:\MyNewProject\MyNewProject -CreateNewProject -Platform Windows -Platform Linux
WwiseConsole create-new-project C:\MyNewProject\MyNewProject.wproj --platform Windows Linux
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요