Sound Wave基础:音频波形资产属性、循环设置、音高与音量调节、音频时长与采样率
好,咱们正式开始聊音频资产本身。很多新手一上来就急着挂各种效果器,结果声音反而越调越怪。其实,最核心的东西就在Sound Wave这个资源里。你把它玩透了,后面事半功倍。
音频波形资产属性:你导入的到底是什么?
在Unreal里,你拖进去一个.wav或.mp3文件,引擎会自动生成一个Sound Wave资产。双击打开它,你会看到一个波形图,还有一堆属性面板。我习惯先看这几个关键项:
- Format:显示当前音频的编码格式。PCM是未压缩的,质量最高,但体积大。ADPCM是压缩的,体积小,适合对音质要求不高的音效。
- Channels:单声道还是立体声。这个很重要,后面做空间音频时,单声道才是正确的选择。
- Sample Rate:采样率。常见的是44100Hz或48000Hz。我建议项目统一用48000Hz,因为Unreal的音频引擎内部就是跑在这个频率上,可以减少重采样带来的损耗。
- Duration:音频时长。这里显示的是精确到毫秒的时长。
核心要点:Sound Wave资产是音频数据的容器。你在这里做的任何设置,都会影响它在游戏中的表现。别小看这个面板,它是整个音频系统的基石。
循环设置:让声音无限延续
很多背景音、环境音需要循环播放。你不需要在蓝图里写循环逻辑,直接在Sound Wave里设置就行。
找到属性面板里的 Looping 选项,勾上它。就这么简单。但这里有个坑——我曾经遇到过一个环境音,循环播放时每次开头都会“咔”一声。后来发现是音频文件本身的开头和结尾波形不连续,导致循环点处产生了爆音。
避坑指南:我曾经因为偷懒,直接拿一段没处理过的音频勾上循环,结果在游戏里听出了明显的“咔嗒”声。解决办法是在音频编辑软件(比如Audacity)里,把音频的开头和结尾做成交叉淡入淡出,确保波形在循环点处是平滑过渡的。
另外,如果你需要更精细的循环控制,比如循环开始点和结束点,可以在Sound Wave的 Loop Start Offset 和 Loop End Offset 里设置。不过大多数情况下,勾上Looping就够了。
音高与音量调节:别只靠混音器
很多人以为调音量和音高只能靠混音器(Audio Mixer)或蓝图。其实Sound Wave本身就有这两个参数:
- Volume:音量调节。范围0到1,默认是1。我一般不会在这里调音量,因为它是静态的。我更倾向于在Sound Cue或蓝图里动态控制。
- Pitch:音高调节。范围0.4到2.0,默认是1.0。小于1声音变低沉,大于1声音变尖锐。
你可能会问:“直接在Sound Wave里调音高,跟用蓝图调有什么区别?” 嗯,区别在于作用域。Sound Wave里的设置是全局的,所有引用这个资产的地方都会受影响。而蓝图里的设置是实例化的,只影响当前播放的那个声音。
个人经验:我习惯把音高调节放在Sound Cue里做。比如脚步声,我会用不同的音高来模拟不同材质的地面。这样同一个脚步声音频,通过调节音高就能产生多种变化,省去了导入多个音频文件的麻烦。
音频时长与采样率:为什么这两个参数这么重要?
先说说采样率。它决定了音频的频率范围。人耳能听到的频率大约是20Hz到20kHz。根据奈奎斯特定理,采样率至少要是最高频率的两倍。所以CD音质的44100Hz是够用的。但为什么我推荐48000Hz?因为Unreal的音频引擎内部处理时,会把所有音频都重采样到48000Hz。如果你的音频是44100Hz,引擎就要多一步重采样计算,虽然影响不大,但能省则省。
再说时长。这个参数直接决定了你的音频文件有多大。公式很简单:
文件大小(字节) = 采样率 × 声道数 × 位深度 × 时长(秒)
举个例子:一段10秒的立体声音频,采样率48000Hz,位深度16bit:
48000 × 2 × 2 × 10 = 1,920,000 字节 ≈ 1.83 MB
你看,时长越长,文件越大。在移动端项目里,我经常要跟策划吵架,因为他们总想塞进一段30秒的完整背景音乐。我只好跟他们解释:这玩意儿加载到内存里,会吃掉多少宝贵的资源。
实战建议:在项目初期就定好音频规范。比如所有音效统一用单声道、48000Hz、16bit。背景音乐用立体声、48000Hz、16bit。这样既能保证音质,又能控制资源大小。
总结一下
Sound Wave资产看似简单,但它是整个音频系统的根基。循环设置、音高音量、采样率时长,每一个属性都直接影响最终效果。我见过太多人忽略这些基础属性,结果后面出了问题到处找原因。说白了,你把这些基础打牢了,后面做空间音频、动态混音时,才能游刃有余。
下一章,我们会聊Sound Cue——那个让你把声音玩出花来的节点编辑器。到时候你会发现,今天学的这些属性,全都会用上。