美文网首页
Unity3d集成Wwise音频引擎的心得体会(二)

Unity3d集成Wwise音频引擎的心得体会(二)

作者: 八百里外一枪 | 来源:发表于2020-08-10 00:10 被阅读0次

    2020-08-09
    距离第一次写unity接入wwise的心得体会一年半了,再回来继续写~

    Wwise概念和用法怎么学

    看Wwise官网!!!Wwise很独立,官网是权威解释。相比其他有些工具官网一塌糊涂,全仰仗民间大神贡献的情况。Wwise很不一样,官网的中文翻译做的是极好的,而且有教学,问答,博客板块,基础内容以及很多知名项目分享的使用技巧可以直接在官网搜到。所以看官网是想系统学习Wwise的第一选择

    那写心得体会干嘛

    Wwise官网够系统不代表最适合项目。个人理解,官网demo提供的是一套简易方案,是音效师有unity3d基础,能较高程度介入到客户端开发的方案。那么问题来了,要是音效师懂unity3d,会写代码,会做性能测试,那最棒了!!!然而,我们音效外包的/音效不懂unity3d/音效太忙/程序要动态控制(以上情况任选)等等都会导致实际音效师不参与或较少参与unity3d操作,也就是说在Wwise里生成必要音效资源后,后续由是程序和策划配合进行。所以才有这篇心得体会,尽量也只写体会,不涉及实际代码。由此请注意,心得体会出自个人理解,仅供参考,如有错误请指正

    Wwise和Unity3d的协作

    假设现在音效师在Wwise把资源生成好了,Wwise的工程里会有什么呢?

    1. 导入origin source原始音频
      原始声音文件,只能是wav格式,会被导入到Wwise里保存一份
    2. 生成Audio(声音记录)
      Wwise里第一层封装,声音记录,这个记录内部会记对应的原始声音文件
    3. 生成Event(事件)
      Wwise里第二层封装,Event里可以包含多个action(行为),常见的action有play(播放一个声音),stop(停止声音),post(触发进行另一个event)等等
    4. 生成并导出SoundBank(声音库)
      Wwise里的第三层封装,一个SoundBank记录了多个Event。最终SoundBank会生成实际的文件供Unity3d读取,文件里包含Event和Event里要播放的声音

    那么Unity3d客户端在游戏运行时要干什么?大致是个反向的过程

    1. 读SoundBank(声音库)
      读取SoundBank文件(后续会说到媒体文件,这里理解成声音库的一部分即可),确保要发生的Event的资源加载好了
    2. 发Event(事件)
      将Event的名字(或ID号)通知给Unity3d里的Wwise引擎,让Wwise引擎按照Event做对应的action。
      好了,到处理Event时程序员是不知道Wwise引擎具体做了什么的

    所以请记住

    1. Wwise工程里对声音控制会层层解耦。原始文件--声音记录---事件--声音库
    2. Unity3d工程运行时只关心SoundBank是否读取,以及要开始什么Event。不关心Event里action是什么,不关心Audio层是什么,不关心origin source原始文件是什么

    那Unity3d程序员要干什么呢?
    实现SoundBank管理类,Event管理类。Wwise给了SoundBank的管理例子,但没给Event的管理类,所以我们需要参照已有内容,记录声音事件开始了几个,停止了几个,获取播放进度等等

    开始使用

    如果上述概念理解了,那么就可以实现一个简单版的,程序可以动态控制的声音管理类了

    相关文章

      网友评论

          本文标题:Unity3d集成Wwise音频引擎的心得体会(二)

          本文链接:https://www.haomeiwen.com/subject/mfgrdktx.html