音频应用

 找回密码
 快速注册

QQ登录

只需一步,快速开始

搜索
查看: 508|回复: 0

[音频] 利用 Spline Based Audio Emitter 创建自定义形状

[复制链接]

3

帖子

1

听众

28

积分

音频应用新手发布

Rank: 1

积分
28
发表于 2019-7-5 21:42:14 | 显示全部楼层 |阅读模式
大家好!我计划撰写一系列短文来探讨关于结合 Wwise 在 Unreal Engine 4 中运用音频工具的尝试,这是第一篇。希望这些博文能给读者带来一些启发并促进相互交流,最终帮助大家成为更加优秀的开发人员。我真的很想跟游戏音频社区的诸位分享自己的经验,并且十分乐意听听各位对文中谈及的话题都有怎样的看法。因为这是该系列博文中的第一篇,所以我觉得有必要简单介绍一下自己。我叫特勒尔斯 (Troels),我就是大家所说的技术声音设计师,同时还是一名作曲家。
2 s( b( W! N6 N2 v* J/ s! I, b9 n" x: Gwww.audioapp.cn  audio app

在过去一年半的时间里,我不知花了多少个晚上和周末学习使用 Unreal Engine 4、制作游戏原型、开发非商业项目,陶醉其中简直停不下来。现在,我又开始学习在职业工作中运用 Unreal Blueprint(蓝图)。因为其中学到的好些东西都跟音频工具相关,所以我就想写篇短文在这里跟各位探讨一下。于是,就有了这篇博文。
3 ^* M# z( W1 J9 R
" D( }) \/ c$ q' y( ]! c下面我们就来说说第一个话题,也就是…
9 A8 ^  B  r0 j5 x- a+ ^- H/ m7 N8 x5 iwww.audioapp.cn  audio app

Spline Based Audio Emitter(即 Volumetric Audio Emitter)+ `$ ?$ h! P( q$ |4 M5 f' qwww.audioapp.cn  audio app

因为没有找到用于在 UE4 中创建自定义音频发声区域形状的现有工具和解决方案,所以我就跟同事一起试着创建了这么一款工具。
( |, q: R1 M. T) N% Z. U4 }6 H: Y- {
0 W; j2 i7 _5 M 640.webp (9).jpg
5 h* F! v6 p3 T6 R4 l# Y/ r9 Awww.audioapp.cn  audio app

它能用来做什么?8 Y; B- Q' O+ z, _: Swww.audioapp.cn  audio app

该工具方便在 UE4 中概略画出大片的非立方形/箱形/球形区域(如森林或沼泽区域),进而在其内部或外部添加音频。请注意,直接通过基于 Spline(样条)的形状就可获取现成的简化形状版本。) l  R/ G! P, B, ~www.audioapp.cn  audio app

  h+ n0 P7 W* C  Y' ]1 {+ G& K  Ewww.audioapp.cn  audio app

为什么要使用它?
, p8 y7 z& C  o, A. D9 |0 t$ J1 W因为这样便于在靠近自定义区域形状时淡入/淡出环境声,从而摆脱只能使用基本形状的限制。如此一来,便可节省很多时间,尤其是在原型设计当中和关卡/环境迅速变化的情况下。另外,假如设有包含入口的闭合区域,并为 AkComponent 启用了声笼,还可让播放的内部/外部环境声只穿过入口而不穿过墙壁,使听觉效果显得更加逼真。而且,它只使用一个发声体,所以还有助于减少声部数。下面我们通过视频来具体看下其工作原理。注意,该视频只是对核心功能的简略介绍。另外还有很多其他功能并未涵盖在内,比如内部/外部 State(状态)、跟随玩家高度、区域淡变距离 RTPC(用来根据用户定义的位置源设计 2D 或 3D 声音)。% c# T2 v( X/ W9 k5 K$ a) Jwww.audioapp.cn  audio app


- R& M- ~4 @5 z' E; p  W# u( n6 E3 z, k) r4 E7 ^www.audioapp.cn  audio app

功能:
' P2 F! [+ N) V' F* U4 T% wSpline Based Audio Emitter 使用闭合样条环路。它可以定位样条曲线上距离玩家最近的点,并在该点放置音频发声体。在此过程中,将会不断更新发声体定位。
) k  m! q7 a- Y9 {. VSpline Based Audio Emitter 具有两种 State:Outside(外部)和 Inside(内部)。在玩家走到闭合环路内部时,State 变为 Inside。这时,音频发声体定位会一直跟随听者位置及朝向。一旦玩家走到样条环路外部,State 就会变为 Outside。此时,音频发声体定位会再次关联到样条曲线,并持续定位在曲线上距离玩家最近的点。
) B" s+ ^' J0 Z$ `原理:
" T2 r+ a' J1 J4 ?& Y: I如需了解该工具的工作原理,请查看 UE4 中的 Blueprint – 相应文档均有详细归类。注意,该工具还暴露了多个公共变量,便于用户根据需要灵活设置。您可以在此下载。
# K2 O1 L% U0 k, |9 N6 L0 u这款工具依赖的两个主要元素/节点功能为:
1 G, X1 J5 i: r4 H, H9 S; G! t1 W0 f) L$ z6 xwww.audioapp.cn  audio app

获取样条曲线上距离玩家最近的点(用于发声体定位)。: u( q6 g6 {* j5 r& w0 o- Gwww.audioapp.cn  audio app

点积(用于确定玩家是在闭合样条环路内部还是外部)。1 W/ {; z, w( s' r0 Owww.audioapp.cn  audio app

用法:* L9 ~5 u: Y# X. Y$ lwww.audioapp.cn  audio app

将 Blueprint 放到场景中,并创建所需形状。就个人来说,在此过程中我喜欢切换到俯视视图。
* Q% r/ W9 K& y7 Z6 G. V在 Details(详情)面板内暴露的变量中,添加声音并告知 Blueprint 要用于 Area Fade(区域淡变)的 RTPC。9 f, z1 q& r! i6 u4 E9 ?8 Ywww.audioapp.cn  audio app

注意以下两点可能会导致工具出现故障:
9 U/ U- p; M- O  N假如发声体衰减距离太长,V 形/凹形形状可能会出现麻烦。我也很想找到这一问题的解决方案。比方说,假如你创建一个凹形并将听者定位在两端的中间(如下图所示),那么玩家在 V 形形状内横向移动时,发声体就会从一端瞬间跳到另一端。4 A& U1 P# M( M: I, `  L( vwww.audioapp.cn  audio app

确保样条环路上的点没有相互交错。只有样条点之间的交替关系单一,才能正常切换 Inside / Outside State。
1 R% Y# m; M. fImage 2 ConcaveNotGood9 U8 {/ @& k1 o. W2 Swww.audioapp.cn  audio app

优化:
+ q- M7 }6 h4 A2 I- \" y, @& T我预料到此 Blueprint 的 CPU 处理时间相较于现有环境形状/工具会长不少,所以我们对它进行了一些简单的优化。比如,在玩家/听者与样条曲线上最近的点之间的距离为 X 时,大幅降低 Blueprint 状态更新的节拍率(Tick Rate)。( u* l5 C" ^0 [% J/ u1 Uwww.audioapp.cn  audio app

640.webp (10).jpg 5 A* E+ i# p4 awww.audioapp.cn  audio app

" Z2 b4 n' v2 f# x" twww.audioapp.cn  audio app

特罗尔斯.尼加德(TROELS NYGAARD)+ x, b' n  I( `( m5 Pwww.audioapp.cn  audio app

技术声音设计师与作曲家
" K* R- i! Z; b3 D' {4 \Investigate North
1 t% M' ]9 F8 l) RTroels Nygaard 是一名技术型声音设计师和作曲家,2014年获得了声音设计的本科学士学位并在2016年获得了音频整合与用户体验方向的游戏设计理科硕士学位。此外,Troels也是Wwise的认证讲师和音乐制作人。
Spline.webp.jpg
音频应用 Audio app
高级模式 自动排版
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

QQ|小黑屋|手机版|Archiver|音频应用 ( 鄂ICP备16002437号-6)

Powered by Audio app

快速回复 返回顶部 返回列表