风暴娱乐:2022-01-04 13:55
音乐已经是现代游戏的标志,打造3D音效更是每个游戏公司的最求。今天就和大家说说3D音效的做法。
游戏音效可大致分为人物音效,场景音效,特效音效,场景混音,UI音效,场景背景音乐,天气音效。这些模块。总够是7个。一开始大家就认为音效可以一下子就加进来,不需要修改其他的模块,不需要大量的代码,那么我就只能按照常理的思维开发独立于其他的人一套代码。
第一步要做的就是封装fmod,这个简单,fmod有相应的接口,自已用类的对象封装一下就可以了。最后留出接口,play,pause,stop,还有getStatus,这个必须的,因为随时要知道当前声音的播放状态。以便从外部知道是否暂停或者播放。然后在每一帧都更新收听者的位置信息就可以了。
1、人物音效,人物音效是这样的东西,一个人物在跑步,跳跃,释放魔法,受伤等等各种动作的时候都会有相应的声音,我们需要在主角所在的位置听到合适的地方传来相应的声音。这个时候需要检测当前人物的动作,并且对场景内所有人物的状态进行遍历,这个其实工作量不是很大,因为更据需要只需要遍历一定范围内的人并且检查动作状态就可以。因此人物音效因此需要有两个接口,一个是人物开始播放某个动作了,另外一个就是人物动作更新到某一个时间了是否在这个时间点播放该音效。然后就是一个容器的设计。我采用的是gamebryo引擎,在人物开始的时候会有一个textEvent,触发一个“start”事件。然后我们肯定每帧都会更新更新角色属性,这个时候减去一下动作触发的开始时间就可以确定是否到了该声音的触发点。于是做到了整个场景角色的3d声音。
2、场景音效,场景音效需要加入到场景编辑器中,同时开发一个触发器来。当人物进入到某个区域的时候自动触发,触发后自动播放声音;同时场景还可能有3d瀑布之类的,这种不需要触发器,声音给一个衰减属性就可以了。让这个声音循环播放,人物走到该处随距离而衰减的会。
3、特效音效,是一种和特效一起播放的声音,一般是不循环的,playOnce的音效。要加入到特效编辑器的模块中,和特效添加的方式一样,只是这种音效没太多的修改器。
4、场景混音,混音是当进入到某个范围比如山洞,说话会有回音的效果,进入水底说话就很沉闷这种,这种也是需要开发一个触发器,当进入这个区域时自动设置混音就可以。当离开这个区域再触发一个事件就是混音关闭。
5、UI音效,可以加入到UI编辑器中,也可以在游戏中写死代码,主要就是会有一个csv的对应文件,说明什么样的事件对应什么样子的音效。
6、场景背景音乐,这个声音是立体的,不随位置改变而改变,因此十分简单,自己去播放就可以了。
7、天气音效,这个有打雷,下雨等等,需要在天气系统中的触发该天象变化的地方写一个回调函数,函数内写明播放该音效就可以。
以上就是小编给大家总结的7种常见音效制作方法,其实还有很多今天在这就不和大家细说了,了解更多游戏音效制作相关内容敬请关注风暴娱乐官网。