zoukankan      html  css  js  c++  java
  • 通过XACT添加声音——概览

    通过XACT添加声音

    概览

    本章将更深入的讨论XACT。XACT是微软跨平台音频创作工具(Microsoft’s Cross-Platform Audio Creation Tool)的简称,它可以让您为Windows和Xbox 360平台创建音频项目。事实上,它也是在XNA中播放声音的唯一方法。这对Windows平台并不那么重要,因为你可以插入您想要的任何其他声音引擎(如DirectSound,OpenAL,FMod等等)。但在Xbox 360上并不容易,因为你只能使用XNA框架,它不能使用任何其他框架播放声音。您只能使用XACT的原因是在XNA中不能使用任何非托管代码,出于同样的原因您也不能使用任何其他的图形或输入引擎,只能用XNA提供的。.

    但是,XACT不是一件坏事,它能确保在Windows和Xbox 360平台使用相同的声音内容文件和播放代码。例如,Xbox 360仅支持XMA压缩,而PC使用其他压缩格式,如MP3, Ogg,ADPCM和其他自定义的压缩格式,但XACT只支持ADPCM。IP语音应用通常使用专有的声音压缩格式,因为人类的声音比音乐更容易被压缩,例如,音效文件非常短小,但作为一个游戏开发者通常想要尽可能高品质的声音效果,因此,音效文件往往是未压缩的或使用无损压缩。而对于音乐来说,它占用了大量的空间。如果您的游戏是在DVD上或者您有足够的硬盘空间可以浪费,你可以存储未压缩的wav文件。对于XNA游戏来说这并不好,因为你不能访问DVD,浪费几百MB的空间在音乐上并不是一个好主意。

    在过去的DirectX或托管DirectX应用程序中,你最有可能使用DirectSound播放声音或使用其他如OpenAL、Fmod之类的框架。即使使用这些框架,您仍然需要做大量的自定义代码,你必须判断哪些声音格式是最适合你的,你将自己处理声音的压缩。此外,您必须自己实现播放音乐的方式。例如,DirectSound对音乐来说不是很有用,它只是支持wav文件,如果你想播放MP3或OGG音乐文件,您必须使用如DirectShow、Windows MCI、ActiveX播放代码之类的其他框架。听起来要做大量的工作,但大部分游戏中播放声音的实际代码是非常简单的。如果您要使用复杂的3D音效计算或支持环绕立体声会复杂点,但它仍比开发3D引擎容易。

  • 相关阅读:
    Jetty开发指导:WebSocket介绍
    Python处理JSON
    聚焦数据可视化之中的一个--沃尔马怎样利用数据可视化依据实时社交数据调整採购和仓储计划?
    刚刚在寻找微博
    2010级信管毕业生实习总结汇编版(共29份)
    推荐杀毒软件
    Windows Server 2008 R2 下载地址
    在myeclipse中使用log4j记录日志
    获取Tomcat更详细的日志
    java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
  • 原文地址:https://www.cnblogs.com/AlexCheng/p/2120246.html
Copyright © 2011-2022 走看看