버전

menu_open
알림: 고객님의 주요 출시 버전( 2023.1.8.8601 )에 해당하는 최신 설명서로 이동했습니다. 특정 버전의 설명서를 보시려면 Audiokinetic 런처에서 오프라인 설명서를 다운로드하고 Wwise Authoring의 Offline Documentation을 확인하세요.
Wwise Unreal Integration Documentation
Wwise Unreal 에셋

Wwise Unreal 에셋

Unreal 통합을 사용하려면 사용자가 Wwise 프로젝트에서 해당 오브젝트를 나타내는 에셋을 만들어야 합니다. You can create these assets through Using the Drag-and-Drop Feature drag-and-drop from the Wwise Browser, or from the right-click menu in the Content Browser. 드래그하여 만들어진 에셋은 해당 Wwise 오브젝트에 연결하는 데 필요한 정보(GUID, ShortID, Name)를 자동으로 포함합니다. Content Browser를 통해 에셋을 만들 때는 이러한 정보를 수동으로 추가해야 합니다. 두 방법 모두 나중에 에셋을 편집해서 특정한 Wwise 오브젝트를 가리키도록 설정 할 수 있습니다. 이러한 에셋 유형을 사용하는 Blueprint 기능에 대한 자세한 내용은 블루프린트 함수 를 참고해 주세요.

참고:맵과 Blueprint에서 Wwise 에셋을 직접 참조하면 에셋에 필요한 모든 Wwise 리소스(.bnk와 .wem 파일)가 자동으로 게임에 패키징됩니다. 그러나 코드를 통해서 이러한 에셋을 로드한 경우 에셋이 올바르게 패키징되었는지 다시 확인해야 합니다.

다음 표는 해당 Unreal 에셋 클래스가 있는 Wwise 오브젝트의 유형을 열거합니다.

Wwise Unreal 오브젝트
Wwise Object TypeUnreal 에셋 클래스설명
Acoustic TextureUAkAcousticTextureSoundEngine에 식별해주는 ShortId용 래퍼.
RTPCUAkRtpc
TriggerUAkTrigger
Audio Device ShareSetUAkAudioDeviceShareSet
Auxiliary BusUAkAuxBusContains the ShortId and also ensures that the required media and SoundBank resources are loaded into memory and packaged in the built game.
EventUAkAudioEvent
Effect ShareSetUAkEffectShareSet게임 내에서 Effect ShareSet를 동적으로 설정하는 데에도 필요한 ShortId용 래퍼. 필요한 미디어와 SoundBank 리소스가 메모리에 로드되고 빌드된 게임에 패키징되는지 확인합니다.
Init BankUAkInitBankInit Bank 파일이 게임에 패키징되고 다른 SoundBank보다 먼저 로드되는지 확인합니다.
State ValueUAkStateValueShortId 및 상위 그룹의 ShortId에 대한 래퍼입니다. UAkAudioEvent 에셋에서 FWwiseEventInfo 구조의 고급 설정SwitchContainerLoading::LoadOnReference가 제대로 작동하기 위해서 필요합니다. 이 설정이 활성화된 경우 이러한 그룹 값 에셋을 로드하거나 언로드하면 전환된 미디어 리소스의 동적 로드가 트리거됩니다. 자세한 내용은 Optimizing Memory Usage with Reference-Loaded Switch Containers 를 참고해 주세요.
Switch ValueUAkSwitchValue

WwiseObjectInfo 구조

Wwise Unreal 에셋에는 Wwise 프로젝트의 고유한 오브젝트를 가리키는 FWwiseObjectInfo 정보 구조가 포함되어 있습니다. 일부 에셋 클래스는 데이터가 로드를 준비하는 방법과 같은 작동 방식에 영향을 미치는 추가 입력란이 있는 하위 클래스를 사용합니다. 이 구조는 저장될 때 에셋에서 직렬화되지만 패키지 빌드를 위해서 쿠킹될 때 폐기됩니다. 쿠킹 중에는 해당 구조가 WwiseResourceCooker로 전달되어 패키징된 에셋에서 직렬화되는 쿠킹된 데이터를 가져옵니다. CookedData 구조에 대한 자세한 내용은 Wwise 에셋 쿠킹 및 로드된 데이터 를 참고해 주세요.

FWwiseObjectInfo

기본 정보 구조체입니다. 에디터의 에셋이 로드되거나 쿠킹될 때 이 구조체는 WwiseDatabase를 쿼리하여 모든 에셋의 필수 리소스(.bnk와 .wem 파일)를 메모리에 로드하는 데 사용되는 CookedData 구조를 가져오는 데 사용됩니다.

속성:

  • WwiseGuid: Wwise 프로젝트에서 이 에셋을 식별하는 GUID입니다.
  • WwiseShortId: Wwise SoundEngine의 에셋을 나타내는 32비트 정수입니다.
  • WwiseName: Wwise 프로젝트에 있는 에셋의 문자열 이름입니다. 이 이름은 해당 에셋을 포함하는 언리얼 에셋의 이름과 일치할 필요는 없습니다. 그러나 에셋이 직렬화될 때 WwiseObjectInfo의 모든 식별 입력란이 비어 있는 경우에는 Unreal 에셋의 이름과 일치하도록 WwiseName 입력란이 업데이트됩니다.
  • HardCodedSoundBankShortId: 에셋이 종속성으로 로드해야 하는 SoundBank를 식별하는 32비트 정수입니다. 예를 들어 하나의 Event가 여러 SoundBank에 포함되어 있는 경우 해당 에셋과 함께 패키징하고 로드할 SoundBank를 지정할 수 있습니다. 이 입력란을 설정하지 않으면 해당 Wwise 오브젝트를 포함하는 모든 SoundBank가 함께 로드됩니다.
참고:HardCodedSoundBankShortId 속성은 SoundBank 리소스가 필요한 유일한 에셋인 UAkAudioEvent, UAkAuxBusUAkEffectShareSet 에셋에만 영향을 미칩니다.

Wwise Database에서 검색하면 WwiseGuid, WwiseShortId, WwiseName 순서로 입력란의 우선 순위가 지정됩니다. 예를 들어 WwiseGuid가 유효하지 않으면 WwiseShortId가 오브젝트 검색에 사용됩니다.

WwiseObjectInfo에서 Wwise 오브젝트를 식별하는 세 가지 속성(WwiseShortId, WwiseGuid, WwiseName)이 Unreal Asset 인스펙터에서 수정되면 Wwise 프로젝트 데이터베이스에서 새 속성의 값과 다른 두 입력란과 일치하는 오브젝트를 검색하고 그에 따라 업데이트합니다.

FWwiseObjectInfo의 하위 클래스에는 데이터를 올바르게 로드하는 데 사용되는 추가 정보가 포함되어 있습니다. 또한 인스펙터에서 WwiseObjectInfo 속성(또는 하위 클래스의 모든 입력란)을 변경할 경우에도 에셋의 Wwise 리소스가 다시 로드됩니다.

FWwiseEventInfo

UAkAudioEvent 에셋에 대한 FWwiseObjectInfo 의 하위 클래스입니다. FWwiseEventInfo에는 사용자가 Event 에셋이 로드되고 파괴될 때의 작동 방식을 커스터미이징할 수 있는 추가 옵션이 포함되어 있습니다.

추가 속성:

  • SwitchContainerLoading: 'AlwaysLoad'는 전환된 모든 미디어 및 이를 사용하는 이벤트와 함께 로드합니다. 또한 'LoadOnReference'는 스위치나 그룹 값도 메모리에 있을 때만 미디어를 로드합니다. 자세한 내용은 Optimizing Memory Usage with Reference-Loaded Switch Containers 를 참고해 주세요.
  • DestroyOptions: 'StopEventOnDestroy'는 파괴될 때 이벤트 재생을 중지하고 'WaitForEventEnd'는 이벤트 재생이 중지될 때까지 기다립니다.

FWwiseGroupValueInfo

Switch 및 State Value 에셋에 대한 FWwiseObjectInfo 의 하위 클래스. FWwiseGroupValueInfo는 State나 Switch Group의 ShortId도 포함하고 있습니다.

추가 속성:

  • GroupShortId: 에셋을 포함하는 그룹을 식별하는 32비트 정수입니다.

Wwise 에셋 쿠킹 및 로드된 데이터

Wwise Asset에는 필요한 리소스(.bnk 및 .wem 파일)를 로드하고 다른 Wwise Object에 대한 종속성을 모니터링하는 데 사용되는 CookedData 구조체가 포함되어 있습니다 (예: Switch Container를 재생하는 Event에서 사용하는 스위치). WwiseResourceCooker 모듈은 FWwiseObjectInfo 구조체를 받아들이고 해당 Wwise 오브젝트의 CookedData 구조체를 반환하는 함수를 제공합니다. 또한 FWwiseObjectInfo 구조체를 취하고 패키징에 필요한 리소스를 준비하는 함수를 제공합니다.

에디터에서 작업할 때 CookedData 구조체는 일시적이며 에셋에 직렬화되지 않습니다. 이렇게 하면 Wwise 오브젝트 간의 데이터나 연결을 변경할때 해당 Unreal 에셋이 불필요하게 변경되는 것을 방지할 수 있습니다. 패키징하는 동안 CookedData는 패키징된 에셋에서 직렬화되고 Wwise 정보 구조체는 폐기됩니다.

해당 WwiseResourceLoader 모듈은 에셋의 필수적인 리소스를 메모리에 로드합니다. CookedData 구조체를 받아들이는 함수를 제공하고 WwiseFileHandler 모듈의 메소드를 호출하여 실제 리소스의 로딩을 관리합니다. 그런 다음 'Loaded' 구조체에 대한 참조를 반환합니다.

참고:UAkRtpc, UAkTrigger, UAkAcousticTexture, and UAkAudioDeviceShareSet assets do not need to load additional resources. 이 에셋은 WwiseResourceLoader와 상호 작용하지 않으며 CookedData 구조에는 ShortId만 포함됩니다.

Wwise Unreal 에셋 유형

UAkAudioType

모든 Wwise Unreal 에셋의 기본 클래스입니다.

속성:

  • AutoLoad: Unreal Asset과 함께 Wwise 데이터(뱅크와 미디어)를 자동으로 로드할지 여부를 결정합니다.
  • UserData: 사용자 데이터의 배열입니다. 여기에 Wwise 통합에서 사용하는 커스텀 기능에 유용한 모든 것을 저장할 수 있습니다. 예를 들어 UserData는 음성 해설 이벤트에 대한 자막 데이터를 저장할 수 있습니다.

블루프린트 함수:

  • LoadData: 에셋에 필요한 리소스(.bnk 및 .wem 파일)를 로드합니다. AutoLoad가 비활성화되어 Wwise 리소스를 수동으로 로드할 때 이 함수를 사용하세요. 이 함수는 여러 번 호출해도 안전하지만 리소스가 불필요하게 다시 로드될 가능성이 있습니다.
  • UnloadData: 에셋에 필요한 리소스(.bnk 및 .wem 파일)를 언로드합니다. 리소스가 다른 에셋에 필요한 경우 해당 에셋도 모두 언로드될 때까지 리소스가 언로드되지 않습니다.

UAkAudioEvent

Event의 UAkAudioType 의 하위 클래스 버전입니다.

속성:

  • MaxAttenuationRadius: 최대 감쇠 반경.
  • IsInfinite: Event에서 재생되는 사운드가 무한 반복되는지 여부를 나타냅니다.
  • MinimumDuration: Event에서 재생되는 사운드의 최소 지속 시간을 추정합니다.
  • MaximumDuration: Event에서 재생되는 사운드의 최대 지속 시간을 추정합니다.
  • EventInfo: 에디터에서 EventCookedData의 속성을 채우는 FWwiseEventInfo 입니다.
  • EventCookedData: 언어에서 언어별 FWwiseEventCookedData로의 매핑을 포함하는 임시 FWwiseLocalizedEventCookedData입니다.
참고:EventCookedData, MaxAttenuationRadius, IsInfinite, MinimumDuration, MaximumDuration 속성은 AkAudioEvent 에셋이 에디터에 로드될 때 채워지고 에셋을 쿠킹할 때 에셋에 직렬화됩니다. 통합은 MaxAttenuationRadius를 사용해서 컴포넌트 시각화(visualizer)에 추가 정보를 표시하는 반면 다른 세 개는 타임라인 트랙에 이벤트를 표시할 때 사용됩니다.

Unreal Content Browser 콘텍스트 메뉴 옵션:

  • Play Event: Event를 게시합니다.
  • Stop Event: 현재 재생 중인 모든 Event를 중단합니다.

UAkInitBank

Init Bank에 대한 UAkAudioType 의 서브클래스.

  • InitBankCookedData: 임시 FWwiseInitBankCookedData.
참고:UAkAudioTypeAutoload 속성은 해당 에셋 유형에 영향을 미치지 않습니다.

UAkAuxBus

UAkAudioType Auxiliary Bus의 서브클래스.

  • AuxBusInfo: 에디터에서 AuxBusCookedData 속성을 채우는 FWwiseObjectInfo.
  • AuxBusCookedData: 언어에서 언어별 FWwiseAuxBusCookedData로의 매핑을 포함하는 임시 FWwiseLocalizedAuxBusCookedData.

UAkEffectShareSet

Effect ShareSet에 대한 UAkAudioType 의 서브클래스.

  • ShareSetInfo: 에디터에서 AuxBusCookedData 속성을 채우는 FWwiseObjectInfo.
  • ShareSetCookedData: 언어에서 언어별 FWwiseShareSetCookedData로의 매핑을 포함하는 임시 FWwiseLocalizedShareSetCookedData.

UAkGroupValue

UAkAudioType 의 서브클래스와 UAkStateValueUAkSwitchValue 의 기본 클래스.

  • GroupValueInfo: 에디터에서 GroupValueCookedData 속성을 채우는 FWwiseGroupValueInfo.
  • GroupValueCookedData: 임시 FWwiseGroupValueCookedData.

UAkStateValue

State 값에 대한 UAkGroupValue 의 하위 클래스.

UAkSwitchValue

Switch 값에 대한 UAkGroupValue 의 서브클래스.

UAkRtpc

RTPC/Game Parameter에 대한 UAkAudioType 의 서브클래스.

  • RtpcInfo: 에디터에서 GameParameterCookedData 속성을 채우는 FWwiseObjectInfo.
  • GameParameterCookedData: 임시 FWwiseGameParameterCookedData.
참고:UAkAudioTypeAutoload 속성과 LoadDataUnloadData Blueprint은 해당 에셋 유형에 영향을 미치지 않습니다.

UAkTrigger

Music Trigger에 대한 UAkAudioType 의 서브클래스.

  • TriggerInfo: 에디터에서 TriggerCookedData 속성을 채우는 FWwiseObjectInfo.
  • TriggerCookedData: 임시 FWwiseTriggerCookedData.
참고:UAkAudioTypeAutoload 속성과 LoadDataUnloadData Blueprint은 해당 에셋 유형에 영향을 미치지 않습니다.

UAkAcousticTexture

Acoustic Texture에 대한 UAkAudioType 의 서브클래스. 이를 Spatial Audio 기능과 함께 사용하는 방법은 AkAcousticTexture 를 참고해 주세요.

  • TriggerInfo: 에디터에서 AcousticTextureCookedData 속성을 채우는 FWwiseObjectInfo.
  • AcousticTextureCookedData: 임시 FWwiseAcousticTextureCookedData.
참고:UAkAudioTypeAutoload 속성과 LoadDataUnloadData Blueprint는 해당 에셋 유형에 영향을 미치지 않습니다.

UAkAudioDeviceShareSet

Subclass of UAkAudioType for Audio Device.

  • AudioDeviceShareSetInfo: FWwiseObjectInfo that fills in the AudioDeviceShareSetCookedData property when in the editor.
  • AudioDeviceShareSetCookedData: Transient FWwiseAudioDeviceShareSetCookedData.
참고:UAkAudioTypeAutoload 속성과 LoadDataUnloadData Blueprint은 해당 에셋 유형에 영향을 미치지 않습니다.

더 이상 사용되지 않는 에셋 및 데이터 유형

다음 클래스 및 구조체는 더 이상 사용되지 않으며 이전 프로젝트에서 마이그레이션하는 데만 사용됩니다.

  • UAkAssetData
  • UAkAssetPlatformData
  • UAkAudioBank
  • UAkExternalMediaAsset
  • UAkFolder
  • UAkLocalizedMediaAsset
  • UAkMediaAsset
  • UAkMediaAssetData

Unreal에서 에셋 링크 보기

Event와 미디어 사이의 연결은 Unreal 참조를 통해 유지됩니다. 그렇기 때문에 다음 이미지와 같이 Unreal Reference Viewer를 사용하여 에셋 간의 링크를 볼 수 있습니다.

For more information about the Unreal Reference Viewer, refer to Reference Viewer.


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요