12

我正在与一个团队合作,该团队正在为各种 2D 以及最终的 3D 迷你游戏构建引擎。我们面临的问题是一个可靠的、跨平台的、健全的 API。显然,由于我们对跨平台功能的需求,DirectX 是不可能的。SDL 很好,而且效果很好,但让我们面对现实吧,SDL_Mixer 的功能有限。我们目前正在使用它,但是当我们最终扩展到 3D 时,这将是一个问题。

我一直在搞乱 OpenAL,但我发现的大多数文档都已经过时了,而且似乎并没有那么好用。我愿意学习 OpenAL,并努力通过它,但我想更确定一点,我不会浪费我的时间。不过,除了 DevMaster 教程之外,我还没有看到太多让我大吃一惊的文档。如果有人有比我找到的更好的材料,那就太棒了。

我还看到了诸如 FMOD 之类的项目,尽管获得了许可,但它似乎还不错。但是,与 OpenAL 一样,它们几乎没有文档。当然,我可以倾注代码来推断我的选择,但考虑到我最终可能会为此付出代价,这似乎有点痛苦。

无论如何,想法,评论,担忧?非常感谢!

4

7 回答 7

12

(注意:我有使用 FMOD、BASS、OpenAL 和 DirectSound 的经验;虽然我在下面列出了其他库,但我没有使用过它们)。

BASSFMOD都很好(实际上我非常喜欢 FMOD 的文档;你为什么说它“不存在”?)。还有Miles Sound SystemWwiseirrKlang和一些中间件包。

OpenAL 据说是跨平台的,并且在每个平台上都有自己的怪癖。它也不完全是“开放的”。而且我不确定它的未来是什么;当 Creative 抓住它时,它似乎被卡住了。不过,最近有一项从头开始构建实现的努力:OpenAL Soft

然后是原生平台 API,比如 Windows 的 DirectSound 或 XAudio2,OS X 的 Core Audio,Linux 的 ALSA,控制台的专有 API 等等。我认为在每个平台上使用原生 API 都很有意义;您只需将它抽象到您需要的通用接口下,并在每个平台上都有不同的实现。当然,这不仅仅是使用 OpenAL,但 OpenAL 甚至在某些平台上都不可用,并且在其他平台上存在您甚至无法修复的各种怪癖(因为没有您可以修复的源代码)。从某种意义上说,向 FMOD 或 Miles 等商业图书馆授予许可是一种选择,因为所有这些依赖于平台的工作都已经为您完成了。

我们现在正在工作中使用 OpenAL,但正在考虑放弃它,因为它不会去任何地方,而且我们无法修复这些怪癖。因此,虽然 OpenAL 很容易上手,但我认为它并不是一个好的选择。

于 2008-09-18T06:52:46.067 回答
6

我在已发布游戏的一系列平台上使用过 DirectX、FMOD 和 Wwise。我不会在这里谈论 DirectX,因为其他人会在这里有很多反馈;-)

以下是您需要考虑的事项:

  • 许可证,我把它放在第一位,因为这可能会为您做出决定。让您的律师仔细检查并确保您了解成本和限制。

  • API - FMOD 有一个非常干净、最小的 API,很容易理解。Wwise 在功能方面提供了更多功能,但它的 API 似乎更大、更笨重,并且带有令人难以理解的笨拙概念。

  • 工具 - Wwise 有非常复杂的工具,非常适合音频设计师而不是程序员,如果你想给音频设计师更多的直接控制和实验空间,Wwise 可能是要走的路。FMOD 在工具部门正在迎头赶上,但我觉得它的工具更适合程序员。

  • 性能 - 这是你需要自己评估的东西,你不能说任何一个比另一个更好,因为这取决于你的平台和游戏类型。您可能会得到引用给您的性能统计数据 - 对这些数据持保留态度,它们很可能以某种方式被理想化。确定您的性能预算(例如,声音每帧 2 毫秒、X 个通道、X 个流)并针对不同的声音格式、采样率和位深度进行一系列测试 - 绘制这些吸盘。

  • 支持 - FMOD 和 Wwise 都有很好的支持渠道,技术人员很好。检查支持是否需要额外费用。

如果您要我选择一个.. FMOD - 它确实是一个非常好的产品,那些家伙做得很好。

于 2008-09-18T09:05:14.797 回答
2

我最近在制作一个使用 FMOD 的 AAA PC 游戏。我们的音频程序员很喜欢它,并且非常高效,所以我要对 FMOD 竖起大拇指。我们只在 Windows 上使用了 FMOD,所以我根本无法谈论它的跨平台方面。

于 2008-09-18T06:37:39.317 回答
1

Bass 库适用于 Mac 和 Windows,并且有很好的文档和 SDK 示例:

http://www.un4seen.com/

于 2008-09-18T06:36:16.260 回答
1

我已经发布了两款使用 Miles Sound System 的 PC 游戏,效果很好。MSS 易于集成、快速且稳定。您从 RAD Game Tools 获得的支持非常好。该库已在超过 4500 款游戏中使用,因此它坚如磐石。它也很便宜!

另一方面,与 FMOD 或 WWise 相比,MSS 是一个相当低级的库。该库没有为声音设计者提供任何方式来控制音量、衰减、随机化、衰落或几乎没有存储在声音文件本身中的任何其他内容。您必须自己编写这些高级功能。

这就是为什么我要为我的下一场比赛评估 WWise。它拥有比 Miles 更发达的工具集。启动和运行需要更长的时间,但到目前为止运行良好。我在使用它来真正提供一种或另一种方式的建议方面还远远不够。

于 2008-11-25T19:40:40.653 回答
1

就工作流程而言,Wwise 可能是声音开发最完整的解决方案。它的设计方式真正节省了您的编程时间,并为您提供了更多尝试和构建复杂声音结构的可能性。借助 Wwise,我们能够为我们的团队组织项目。

我个人非常喜欢他们的互动音乐系统。它很灵活,可以让您的音乐对您的游戏输入做出流畅的反应。

此外,Audiokinetic 的支持也非常出色。始终快速并随时准备提供帮助。

我建议。

于 2009-01-21T18:20:40.613 回答
0

我也可以担保 FMOD,由于工具和出色的多平台支持,它在游戏开发中被广泛使用。与它的设计师合作真的很幸福。但问题是,它需要昂贵的商业开发许可证。

于 2009-01-21T18:42:51.160 回答