UE4 集成 Wwise 插件知识积累

本博文默认认为读者已经有一定的Wwise、Unreal知识基础,重点是总结一些原理及代理流程,并没有过多介绍基本使用,如果需要了解相关基础知识可以查看博文最后的“相关文档链接”

  • 在Montage 中Add Notify “AkEvent”事件原理

UE4 集成 Wwise 插件知识积累

UE4 集成 Wwise 插件知识积累

Montage的 “AkEvent” Notify事件是调到了 Wwise Plugin 提供的“AnimNotify_AkEvent” 函数中

 

在“AnimNotify_AkEvent”  中调用全局的“GetAkComponent”,调用到 Wwise 的C++中的“FAkAudioDevice::GetAkComponent”

UE4 集成 Wwise 插件知识积累UE4 集成 Wwise 插件知识积累

在这个函数中,会全局扫描一个所有的Component,并过滤出 AkComponent 组件,如果找到直接返回,如果没找到就 AttachToComponent 到 参数AttachToComponent的 组件中。

 

所以可以看到在可以从Mesh身上获得 AkComponent 组件,如下:

UE4 集成 Wwise 插件知识积累

个人不建议这么做,这样每次都会扫描扫一次所有组件,可以增加一个自定义通知,在自定义通知上再做事件处理。

 

  • UE4 的Wwise Plugin 中自动添加LocalPlayerController 为Wwise的 Listener 原理

UE4 集成 Wwise 插件知识积累

这个是Wwise作为UE4插件时, 自动加载初始化的,  AkAudioDevice 会全局存在唯一对象,就是在这里初始化

 

UE4 集成 Wwise 插件知识积累

UE4 集成 Wwise 插件知识积累

当判断是LocalPlayerController时,获取到RootComponent ,然后把New出来的UAkComponent 组件添加进去,这样就添加了一个Listener,就可听到发声者的声音。

所以可以通过以下方式GetAkComponent 进行PostAkEvent

UE4 集成 Wwise 插件知识积累

 

 

相关文档链接

Unreal 中使用wise的官方文档:https://www.audiokinetic.com/library/edge/?source=UE4&id=index.html

Wwise官方提供了一个Unreal样例:https://www.audiokinetic.com/library/edge/?source=UE4&id=usingwwisespatialaudio.html

Wwise 相关知道参考:https://www.audiokinetic.com/library/edge/?source=Help&id=welcome_to_wwise

 

原文链接: https://www.cnblogs.com/KisonDu/p/9589098.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    UE4 集成 Wwise 插件知识积累

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/280647

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月15日 上午5:05
下一篇 2023年2月15日 上午5:06

相关推荐