Xact vs AudioContent

时间:2010-09-24 22:50:50

标签: c# audio xna xact

我正在使用XNA开发一款既需要声音效果又需要音乐的游戏。我正在试图弄清楚如何实现声音引擎。 Microsoft提供了使用内容管道加载和播放音频的功能。但是,我也看到人们使用Xact做同样的事情。我的问题是,制造声音引擎的不同之处是什么是更好的方法?

1 个答案:

答案 0 :(得分:4)

Xact功能丰富但使用起来很复杂。它最初是播放声音的唯一方式,但人们想要更简单的东西,所以微软添加了内容管道方法。

如果需要,请使用内容管道:

  • 播放声音(2d或3d)
  • 不必投入大量时间 学习音频框架

如果需要,请使用Xact:

  • 可以的声音类别 相互依赖,像 静音游戏但不是菜单声音
  • 实时高级控制声音 音高,音量。对于类似的事情 炮塔旋转,汽车 加速等。
  • 有多个品种的 单声音效果就像一个七 不同的痛苦声音和Xact 选择要玩哪一个。
  • 稍微发出声音 不同的音高,音量,滤波器或3d 每次播放都会播放。这是 非常适合子弹和 像那样重复的事情。那里 什么都没说假电脑 模拟就像重复的声音 没有差异。
  • 允许游戏设计师或声音 设计师完全控制编辑和 改变声音而不触及 代码。
  • 拥有健全的银行(收藏) 你可以加载或卸载的声音) 一组,可以使用不同的 压缩设置,可以在 记忆或流媒体。
  • 混合音量,音高和优先级 编辑中的声音。
  • 对声音应用过滤。
  • 控制声音是否为 循环与否。
  • 使用DSP效果

我最喜欢Xact的一个方面是在编辑器中编辑和预览声音功能。例如,炮塔过热声音上的音量会消失。使用XACT,您可以与声音设计师坐下来,即使他不是技术人员并编辑控制曲线,直到他对声音感到满意为止。一旦你设置它,以后很容易改变。在此示例图像中,炮塔过热。在过热循环结束时,嘶嘶声的蒸汽噪音量会减少,但由于它是一条曲线,我可以很好地控制声音如何消失。我也使用了这种光束武器,当它弹出弹药时根据曲线降低频率。