首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >游戏开发声音框架

游戏开发声音框架
EN

Stack Overflow用户
提问于 2008-09-18 06:28:17
回答 7查看 8.9K关注 0票数 12

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

我一直在使用OpenAL,但我发现的大多数文档都相当过时,而且似乎工作得并不是很好。我愿意学习OpenAL,并努力克服它,但我想更确定一点,我不是在浪费时间。不过,除了DevMaster教程之外,我还没有看到太多让我印象深刻的文档。如果有人有比我找到的更好的材料,那就太棒了。

我也看到了像FMOD这样的项目,尽管有许可,它看起来还是不错的。但是,像OpenAL一样,它们的文档几乎不存在。诚然,我可以倒在代码上来推断我的选择,但考虑到我最终可能会为此付出代价,这似乎有点痛苦。

不管怎么说,想法,评论,担忧?非常感谢!

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2008-09-18 06:52:46

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

BASSFMOD都很好(实际上我非常喜欢它的文档;为什么你会说它“不存在”呢?)。还有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很容易上手,但我并不认为它是一个好的选择。

票数 12
EN

Stack Overflow用户

发布于 2008-09-18 09:05:15

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

下面是你需要考虑的:

  • License,我将此放在首位,因为这可能会为您做出决定。让你的律师检查它们,并确保你理解成本计算,并且restrictions.
  • API - FMOD有一个非常干净,最小的API,非常容易理解。Wwise提供了更多的功能,但它的应用程序接口似乎更大,更笨拙的概念让你头晕目眩。
  • tools - Wwise有非常复杂的工具,非常适合音频设计师而不是程序员,如果你想给音频设计师更多的直接控制和实验空间,Wwise可能是可行的。FMOD在工具部门正在迎头赶上,但它的工具更多的是面向程序员I feel.
  • Performance -这是你需要自己评估的东西,你不能说任何一个比另一个更好,因为这取决于你的平台和游戏类型。你可能会得到性能统计数据--对这些数据持保留态度,它们很可能在某种程度上被理想化了。确定你的性能预算(例如每帧2毫秒的声音,X数量的声道,X数量的流),并为不同的声音格式,采样率和位深度做一系列测试-将这些suckers.
  • Support - FMOD和Wwise都有非常好的支持通道,优秀的技术人员。检查支持服务是否需要额外收费。

如果你要我选一个..。FMOD -它真的是一个非常好的产品,那些人做得很棒。

票数 6
EN

Stack Overflow用户

发布于 2008-09-18 06:37:39

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

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/90503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档