氧化铁红厂家
免费服务热线

Free service

hotline

010-00000000
氧化铁红厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

简述游戏音频程序员的三种类型及其职责

发布时间:2021-01-20 08:46:32 阅读: 来源:氧化铁红厂家

注:本文原作者是索尼电脑娱乐的主程序员Nicolas Fournel,他在本文中阐述音频程序员的罕见性,并澄清外界对该职位的误解。

我是音频程序员Nicolas Fournel。在游戏行业中,从事这方面工作的人并不多。你往往会看到团队中有图形、可玩性或物理程序员,但音频程序员实属罕见。事实上,某些小工作室根本没有从事该工作的人,通常由新程序员来完成处理音效引擎中间件的任务(注:前端代码似乎是新程序员必须通过的强制性礼仪)。即便某些大公司也只有一个音频程序员,由多个项目和团队共享,或者公司会把此类任务分派给音频兼职人员。

供不应求

从某种意义上来说,这种稀缺性对我们相对有利,因为需求量远远多于音频程序员实际数量。同时,业界对这个职位以及音频程序员能够给团队带来的潜在利益有所误解。自音频程序员面试时,便开始产生这种误解。

因为音频程序员数量很少,所以求职者的面试官几乎不是这方面的人。求职者在面试时通常会同两类不同的人交谈,即其他游戏程序员和音效设计师或音效总监。这两类人都会询问他们熟悉的问题,侧重点在于求职者是否熟悉编程基础或是否知道如何使用DAW,但这与音频编程本身并没有多大关联。在我的从业生涯中,回答过大量有关3D数字、最优化、多线程和C++技巧的问题,但却从来没有人让我说说各种混响编写法则的优缺点,或者何时应该使用多相滤波器。

更令人感到困惑的是,有些人事专员将“音频工程师”与“音频程序员”混为一谈,这会让你面临需要同时处理来自Bob Katz(注:美国顶级Mastering处理大师)崇拜者和软件工程师的求职申请的窘境。有趣的是,我看到日本正在招募些许“音效程序员”,而这些职位实际上涉及的是合成器编程(注:在音频部门中为合成器制作补丁)。

那么,音频程序员究竟是个什么样的职位呢?近期Video Games Musician邮件中Brian Schmidt的说法值得参考。他说道,目前游戏行业中有三种有关音频编程的职位——执行程序员、引擎程序员和DSP程序员。

音频程序员的三种类型

执行程序员将音频添加到各种游戏成分中。通常他负责装载和卸载大量音频资料,触发背景音乐、对话或音效(注:其中大部分内容有望通过数据驱动完成)。他还负责在必要时对这些元素进行更新,如改变音量和音调等。为完成这些工作,他可以利用工作室内的音频引擎或FMod之类音频中间件。很显然,非音频专才也可以完成这些工作。但是,这是个熟悉游戏代码库的绝佳岗位,因为你很可能需要挖掘所有子系统。

依Schmidt所述,引擎程序员负责编写位于所有低级音频系统之上的层。他可能需要构建在音轨间智能交替演变的互动音乐系统,处理音效实例,限制对话长度等。我更愿意把这些称为对各种音频成分的处理,而不是引擎开发。相对执行程序员而言,这个职位需要对系统编程有更深层次的理解。以上文提到的互动音乐为例,他通常需要处理流动和多线程等问题。此类程序员很可能需要接触某些音效或音乐术语,但该职位仍旧不需要大量音频知识。

最后要说的是最低级的DSP程序员,他需要自行处理音频样例,编写高度优化的混频例行程序、滤波器和混响等。这些人对音频了解更多,知晓快速傅氏变换、有限冲激响应和无限冲激响应滤波器、卷积、无混淆波形生成等。

当然,有些程序员单个人便可以做完以上三种工作,或者可以自行完成将上述工作结合起来的任务。编写音频工具(注:比如将音效打包成库,或降低音频与脚本的重复性)是游戏音频开发中另一个非常重要的方面,也是面向运行时间的层次。

音频开发尚未步入正轨

正如你所看到的那样,这三项工作描述显示其涉及音频的程度各不相同。既然可用的游戏音频程序员如此之少,为何不让他们专注于音频设计,而安排他们做些只与音频大致相关的事情呢?我们在上文中描述的执行程序员和中级音频系统开发者并不一定非要音频专业人员。任何游戏程序员都会用音效API来触发音效。编写文件基于某种逻辑(注:如互动音乐或对话)流动的系统也是如此。

我深信音频程序员的主要职责和关注点应该是为游戏团队和音效部门面临的问题提供以音频为中心的解决方案,但目前事态并非如此。基于音频分析的新游戏设计方法、游戏运行时产生带有程序音频的音效、知觉声音管理、混频、音频阴影、内容音频工具,这些仅是音频程序员职责的一小部分,然而当代游戏开发却几乎不包含这些方面的内容。这也是为何游戏音效的发展不及图像处理的原因之一。

如果你有个掌握大量音频知识的程序员,却只让他专注于音效触发、音轨流动或某些基础.Net工具,那么机遇正从你身边流失。我会尝试让音频程序员回归音频编程,向外界展示所有我们可以为你、你的音效团队工作流程和游戏做出的贡献。

僵尸前线4

七星彩局王?图纸

怒剑传说