menu
버전
2024.1.3.8749
2024.1.3.8749
2023.1.11.8682
2022.1.18.8567
2021.1.14.8108
2019.2.15.7667
2019.1.11.7296
2018.1.11.6987
2017.2.10.6745
2017.1.9.6501
2016.2.6.6153
2015.1.9.5624
2024.1.3.8749
2023.1.11.8682
2022.1.18.8567
2021.1.14.8108
2019.2.15.7667
2019.1.11.7296
2018.1.11.6987
2017.2.10.6745
2017.1.9.6501
2016.2.6.6153
2015.1.9.5624
Wwise Unreal Integration Documentation
|
The Wwise Unreal Integration is separated into multiple modules and multiple plug-ins. C++ 프로젝트 내에서 Wwise의 기능을 사용하려면 프로젝트의 빌드 파일(.Build.cs
) 에서 이러한 모듈을 연결해야 합니다. 모듈을 빌드 파일에서 제거하면 해당 모듈을 비활성화할 수 있습니다.
다음 예시에서 프로젝트는 Core, CoreUOBject, Engine, InputCore, AkAudio, WwiseSoundEngine 모듈이 공용으로 포함됩니다. AkAudio
와 WwiseSoundEngine
은 Wwise 모듈입니다.
이 경우 WwiseSoundEngine
모듈과 AkAudio
모듈의 기능을 사용할 수 있습니다. 모듈은 PublicDependencyModulesNames
나 PrivateDependencyModulesNames
에 있을 수 있습니다. For more information about modules, see Unreal Engine Modules.
For more information about Wwise plug-ins and modules, see Understanding the Wwise Unreal Integration Plug-ins.
통합에서 WwiseSoundEngine
, AudiokineticTools
, AkAudio
를 제외한 모든 모듈은 상속을 통해 확장이 가능하도록 설계되었습니다. 이러한 모듈의 대부분의 기능은 가상이기 때문에 개발자가 이를 오버라이드하고 프로젝트에 가장 적합하도록 해당 작동 방식을 변경할 수 있습니다. 모듈을 오버라이드하려면 새로운 모듈을 만들고 오버라이드하려는 모듈을 상속하는지 확인해야 합니다. 그런 다음 원하는 함수를 오버라이드 합니다. 새로운 모듈을 사용하려면 다음과 같이 해당 모듈이 게임의 Build.cs
에 포함되고 DefaultEngine.ini
에 추가되었는지 확인하세요.
The WwiseSimpleExternalSource module is an example of overriding a module. 이 모듈은 Data 테이블이 있는 외부 음원를 처리하기 위해 WwiseFileHandler
모듈을 오버라이드합니다.
C++를 사용하여 새로운 AkComponent
를 생성할 경우 이 컴포넌트를 상위 계층 컴포넌트에 반드시 연결해야 합니다. API가 의도한 대로 작동하려면 AkComponent
가 필요합니다. 다음 섹션은 AkComponent
를 추가하는 방법의 예시를 제공합니다.
Wwise Unreal 통합을 통해 Wwise API를 사용할 수 있습니다. 대부분의 함수는 WwiseSoundEngine
모듈이나 AkAudio
모듈을 통해 호출할 수 있습니다.
The WwiseSoundEngine
plug-in and module provides low-level access to most SoundEngine API operations. 다음 예시와 같이 WwiseSoundEngine
모듈을 사용하면 API 함수에 안전하게 바로 접근할 수 있습니다.
이 코드는 해당 액터에 Event를 게시합니다. 해당 액터에 반드시 UAkComponent
를 추가해서 Wwise에 등록해야 합니다. WwiseSoundEngine
모듈에서 자동으로 Event가 실행되지 않기 때문에 Event도 반드시 로드해야 합니다.
info | 참고: | 2022.1 이전 버전의 통합에서는 동일한 동적 라이브러리에서 API에 접근해야 했기 때문에 AkAudio 모듈 외부의 코드에 접근하는 것이 불가능했습니다. |
AkAudio
는 통합에서의 대부분의 사용자-상호작용 기능을 위한 루트 모듈입니다. 이 모듈은 Unreal Component를 사용해서 WwiseSoundEngine
모듈이 할 수 있는 대부분의 작업을 수행할 수 있습니다. 여기에는 통합에서사용하는 에셋 유형 및 컴포넌트에 대한 클래스가 담겨 있습니다. SoundEngine을 직접 호출하는 대신 AkAudioDevice는 WwiseSoundEngine API의 일반적인 사용을 래핑(wrap)하는 많은 도우미 함수(helper function)를 제공합니다. 이러한 도우미 함수는 API를 사용하는 데 필요한 리소스가 로드되었는지 확인하며 더 많은 정보를 로깅합니다.
다음 코드는 이전 예시와 마찬가지로 주어진 액터에 Event를 게시할 뿐만 아니라 AkComponent
연결과 Event 로딩도 처리합니다.
더 많은 예시 코드는 WwiseDemoGame의 WwiseDemoGame/WwiseCodeExample
에서 찾을 수 있으며 WwiseDemoCodeExampleMap
에서 시험해 볼 수 있습니다.
통합의 각 모듈에는 독립적인 로그 상세 수준(independent log verbosity level)이 있습니다. 이 수준은 효율적으로 디버그할 수 있게 도와줍니다. 오류가 발생하면 오류를 만들어낸 모듈을 찾은 다음 해당 모듈 로그의 디테일 정도를 Verbose나 VeryVerbose로 설정해서 오류가 발생한 이유를 더 잘 이해할 수 있습니다. . DefaultEngine.ini
파일의 Core.Log
섹션에서 각 모듈의 상세 수준을 변경할 수 있습니다. 또한 모든 모듈에서는 기본적으로 활성화되는 LogWwiseHints
라는 특수한 로깅 범주가 있는데, 이 범주는 더 이상 사용되지 않는 기능이나 기타 나쁜 습관을 사용하는 것에 관해서 경고합니다.
사용할 수 있는 상세 수준은 다음과 같습니다.
다음 예시에서 각 모듈과 관련된 상세 수준을 알아 볼 수 있습니다.
For more information about verbosity levels, see ELogVerbosity::Type.
통합에는 디버깅에 도움이 되는 다음 Stat이 포함되어 있습니다.
이러한 정보에 접근하려면 Unreal Viewport 옵션에서 필요한 Stat을 선택하세요.
For more information about Stats, see Stat Commands.
When you package your Unreal project, the assets are "tree-shaken." In other words, Unreal assets that represent Wwise objects are automatically included if they are referenced either by another packaged asset or by a packaged map. If they are, any associated SoundBanks and media files are copied into the built package. Any Wwise Unreal assets that do not satisfy one of these conditions are not included.
This packaging approach is efficient, but in certain cases some Wwise Unreal assets might be improperly excluded, which can cause errors. The following scenarios can cause this type of problem:
If one of these scenarios applies to your project, you must therefore ensure that either the asset is directly referenced by a map, or ensure that the required assets are manually loaded. To manually add assets, add the containing directory to the project's Additional Asset Directories to Cook in the Project Settings. See the Project section of the Unreal Project Settings documentation for more information.
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요