论文部分内容阅读
随着IT技术的持续发展,计算机游戏在整个IT技术领域扮演的角色越来越重要,而游戏引擎则成为了计算机游戏领域中的核心技术。然而大多数关于游戏引擎的研究都集中在视频和人工智能方面,音频方面的研究则比较少。以前的一些音频引擎缺少了对声音通道资源的动态分配、回收和再利用机制,因此本文的音频引擎中设计了声音通道分配算法,回收算法以及动态调整播放声音通道的算法。
另外,目前的游戏使用的引擎还存在如下问题:编程接口复杂,或者灵活度不够;为减小游戏延迟,设计了声音预取池,但是没有提供预取机制;游戏中的背景声音和音效声音没有区别地对待;游戏对3D或特效声音渲染时间过长。本文所设计的音频引擎针对这些问题,设计了解决方案:利用引擎功能接口+配置文件的方式,提供简单的接口和灵活的配置方式;使用配置文件定义了场景、对象与声音文件的对应关系,提供了角色创建和场景切换时自动预取的机制;对背景声音的播放通道和音效声音的播放声音通道分别采用队列和交叉链表的方式进行管理;设计了预测队列,在需要播放的3D或特效声音之前,对可能播放的3D或特效声音建立预测样本,进而建立预测队列,提前渲染。
本文设计的引擎的目标是设计一个接口简便、灵活,能够对声音通道资源自动分配,动态回收的音频引擎。同时我们也描述了本引擎的部署与使用的方法,最后我们也会进行一些实验室实现和测试程序进行测试以证明本引擎真的可以解决上面所描述到的问题。