一、准备好素材
1.UE4支持wav格式,不支持mp3格式。(其他格式还没有试过..)
2.最好命名为英文,中文也可以,但是如果音频过多,搜索的时候不能用中文搜索。
3.导进来之后UE4会把wav文件识别为Sound Wave格式。
二、UE4中的音频播放过程(一些简单的理解,对实践指导作用不大)
1. 用什么来播放音频?
对应Unity中的GameObject和component,UE4是Actor和组件(像Unity一样还有和Actor平级的一些东西,比如Ambient Sound、Directional Light等等)。
在播放音效方面,一种简单的方法是:用Ambient Sound这个物体(其实已经包含了Audio组件)或者给其他物体添加的Audio组件来播放。
Ambient Sound相当于一个音乐播放器。Audio组件相当于半个音乐播放器。
为啥这么说呢?看一下这两个东西的细节面板就知道了。
(1)Ambient Sound:第一幅图,直接把Sound Wave拖到场景中(或者在左侧的模式面板中把一个Ambient Sound拖到场景中并指定Sound Wave),可以在细节的Sound项中播放音频进行预览。
(2)Audio组件:第二幅图,给任意一个场景中的Actor添加Audio组件,并指定Sound Wave,并不能进行预览。
但是它们两个都有播放音乐的功能。这是由Auto Activate这个选项来控制的。如果勾选上的话,只要这个Ambient Sound 或者Audio组件在场景中存在,音频就会在游戏启动时播放。
我现在只用到了细节中最基本的sound项和activation项。可以在Sound项中调节Volume(音量)和Pitch(音调),音调乱调的话会变声的....
2. 怎么控制音频播放的开始和停止呢?
除了背景音乐,一般都需要动态控制音频的播放时间,哪怕是背景音,也有偶尔暂停的时候。
(1)动态添加Audio组件和手动停止Audio组件:
A. 如果在场景中放一大堆Ambient Sound会很乱。而给不同的物体添加好Audio组件,它都藏在物体里面,很不好管理,运行的时候出现了怪声也不知道去哪个物体里面找。可以在想播放声音的时候,调用"Add Audio Component"蓝图结点,在右侧面板上指定Sound Wave。
需要注意的是,如果在关卡蓝图中调用,一定不要让"目标"是关卡蓝图自身。由于关卡蓝图优先级高,如果你还在其他蓝图中添加了Audio组件,同一时间,只会播放关卡蓝图上的Audio。
B. 想要停止,就调用"Set Paused",并勾选"Pause"。如果想再次播放,就再调用一次这个蓝图结点,不勾选"Pause"。
(2)除了这些方法外,还有一大堆蓝图结点可以对Audio Component进行操作,包括:指定sound,设置音量,play,stop,淡入淡出等等等,众多高级功能都在蓝图的"音频"--"组件"--"音频"中等着我们去探索(用到再说hhh)。
(3)蓝图还可以绕过AudioComponent直接操作Sound,诸如"PlaySoundAtLocation","SpawnSoundAtLocation"等等。
(4)直接使用定序器:很方便的添加音频轨迹!
这个方法好像更适合过场动画等等不需要实时交互的东西,在某段时间内播放某个音频,更像视频剪辑软件的功能。
添加方法:过场动画---Add LevelSequence---添加---音频轨迹---添加音频片段,并调整音量。(需要注意一个音轨共享同一个音量和音高)
3.怎么播放一个音频或者播放怎样一个音频?
涉及到更高级的音乐效果的部分并不太懂,但是之前一直为如何循环播放一个音效而烦恼,现在终于找到了更高级的编辑音效的方法啦。
前面已经说过,导进音频素材之后就会变成Sound Wave,但是Sound Wave≠蓝图中提到的Sound。其实除了原生态的Sound Wave,Audio Component还有PlaySoundAtLocation这些节点还支持另一种"Sound"----Sound Cue。
它可以在内容浏览器中右键创建。也可以直接指定给AudioComponent的Sound项。
它的高级之处在于:细节面板上的“编辑”亮了起来!点击之后就可以进入音频编辑器(感觉长得有点像材质编辑器),右侧的Looping结点可以实现循环播放。(如果这里是SoundWave,点击“新”,下面的几个选项也会提醒你创建新的SoundCue)
这次暂时就这些,倒是在整理这些小技巧的时候发现了更多的知识点hhh,有机会再更新一波。
-------------------------------- --感想分割线-----------------------------------
向引擎中添加音乐音效往往是一个项目的最后一步,如果工程比较大的话,一大堆音乐音效砸来还是蛮手忙脚乱的,最好还是写个音乐添加记录单这样的东西,给音效结点也加上不同颜色的注释,这样Debug也比较方便。
另外提一嘴:
想要让视频和它的音频同步的话,创建MediaPlayer时要勾选Audio那个选项,这样会自动把视频的声音放进Media Sound Wave里,怎么手动放我还不太清楚。另外,Medai Sound Wave必须依托一个Ambient Sound才可以正常播放,所以一定要添加。
总结得很好,不枯燥