和网格 (Meshes) 或纹理 (Textures) 一样,音频文件 (Audio File) 资源的工作流程设计以无故障地流畅运行为宗旨。Unity 几乎可导入每种常见文件格式,但使用音频文件 (Audio Files) 时,您需要注意以下几则有用的细节信息。
Unity 中的音频可以是原生 (Native) 或 压缩 (Compressed) 音频。Unity 支持大部分常见格式(请参阅以下列表)并将导入已添加至工程的音频文件。默认模式为原生 (Native),即导入原始文件中的音频数据时,不对其做任何更改。但是,Unity 也可在导入时只启用导入程序中的压缩 (Compressed) 选项压缩音频数据。(iOS 工程可使用硬件解码器 - 有关更多详细信息,请参阅 iOS 文档)。原生 (Native) 和压缩 (Compressed) 模式的区别如下:-
原生 (Native):原生 (WAV, AIFF) 音频适用于短音效。音频数据较大,但无需在运行时对声音解码。
压缩 (Compressed): 音频数据较小,但需要在运行时对数据进行解压缩,这将产生处理开销。Unity 会将音频编码为 Ogg Vorbis(Mac/PC/ 控制台 (Consoles))或 MP3(移动平台),具体取决于定位。如需获取最佳音质,请提供 WAV 或 AIFF(包括 PCM 数据)等未压缩格式的音频,让 Unity 为您进行编码。如果您现在只定位 Mac 和 PC 平台(包括独立式和网页播放器两种),则导入 Ogg Vorbis 文件不会降低质量。但是,在移动平台上导入时,将 Ogg Vorbis 和 MP3 文件重新编码为 MP3 文件,则会对音质有轻微影响。
任何导入至 Unity 的音频文件 (Audio File) 都可在脚本中找到其音频片段 (Audio Clip) 实例,其实际上是一个实用的音频数据存储工具。片段必须与音频源 (Audio Sources) 和音频侦听器 (Audio Listener) 配合使用才可生成声音。将片段添加至游戏中的对象时,这会将音频源 (Audio Source) 组件添加至含有音量 (Volume)、音高 (Pitch) 等许多其他属性的对象。播放源 (Source) 时,音频侦听器 (Audio Listener) 可"听到"范围内的所有源,将这些源组合起来,声音即可通过扬声器发出。您的场景中只能有一个音频监听器 (Audio Listener),并且监听器通常附属于主相机 (Main Camera)。
支持的格式
格式 (Format) 压缩格式 (Compressed as) (Mac/PC) 压缩格式 (Compressed as)(移动平台 (Mobile))
MPEG(1/2/3) Ogg Vorbis MP3
Ogg Vorbis Ogg Vorbis MP3
WAV Ogg Vorbis MP3
AIFF Ogg Vorbis MP3
MOD - -
IT - -
S3M - -
XM - -
有关 Unity 中更多声音使用信息,请参阅本手册创建游戏 (Creating Gameplay) 的 声音 (Sound) 部分。
音频片段 (Audio Clip)
音频片段 (Audio Clip) 包含音频源 (Audio Source)。 Unity 支持单声道、立体声和多声道音频资源(最多八个声道)。Unity 可以导入的音频文件格式包括 .aif、.wav、.mp3 和 .ogg 。Unity 还可以导入 .xm、.mod、.it 和 .s3m 格式的 tracker modules(跟踪器模块)。跟踪器模块资源的行为方式与 Unity 中的任何其他音频资源相同,不过资源导入检视器中不提供波形预览。
音频片段 (Audio Clip) 检视器 (Inspector)
属性
属性: 功能:
音频格式 (Audio Format) 运行时用于声音的特定格式。
原生 (Native) 此选项以较大文件大小为代价提供较高质量,最适合于非常短的声音效果。
压缩 (Compressed) 压缩可生成较小文件,但是与原生音频相比质量有所下降。此格式最适合于中等长度声音效果和音乐。
三维声音 (3D Sound) 如果启用,声音会在三维空间中播放。单声道和立体声声音都可以进行三维播放。
强制单声道 (Force to mono) 如果启用,则音频片段会降混为单声道声音。
加载类型 (Load Type) Unity 在运行时用于加载音频资源的方法。
加载时解压缩 (Decompress on load) 音频文件将在加载之后立即解压缩。将此选项用于较小的压缩声音可避免动态解压缩的性能开销。请注意,加载时解压缩声音使用的内存比保持声音处于压缩状态时大约多十倍,因此请勿将此选项用于大型文件。
在内存中保持压缩状态 (Compressed in memory) 使声音在内存中保持压缩状态并在播放时解压缩。此选项具有少量性能开销(尤其是对于 Ogg/Vorbis 压缩文件),因此仅将其用于加载时解压缩会使用过多内存量的较大文件。请注意,由于技术限制,在使用 FMOD 音频的平台上,此选项对于 Ogg Vorbis 资源会无提示地切换为从光盘进行流式处理 (Stream From Disc)(请参阅下文)。
从光盘进行流式处理 (Stream from disc) 直接从光盘对音频数据进行流式处理。此选项使用的内存通常是文件大小的一小部分,因此对于音乐或其他很长的音轨十分有用。出于性能原因,通常建议一次仅从光盘对一个或两个文件进行流式处理,不过可以从容处理的流数量取决于硬件。
压缩 (Compression) 应用于压缩片段的压缩量。 可以在滑块下查看有关文件大小的统计信息。调整此值的一个好方法是将滑块拖动到保持播放“足够良好”、同时文件小到足以满足分发要求的位置处。
硬件解码 (Hardware Decoding) (iOS (仅限 iOS)在 iOS 设备上,可以使用 Apple 的硬件解码器,从而在解压缩过程中产生较小的 CPU 开销。有关更多信息,请查看平台相关详细信息。
无缝循环 (Gapless looping) (仅限 Android/iOS)在压缩无缝循环音频源文件(采用非压缩 PCM 格式)时使用此选项可确保在对接处保持完美的连续性。标准 MPEG 编码器在循环点处引入了一个较短无声期,这可作为短暂的“嘀嗒”或“嘭嘭”声听见。
导入音频资源
Unity 支持压缩 (Compressed) 和原生 (Native) Audio. 音频。任何类型的文件(除了 MP3/Ogg Vorbis)最初都将以原生 (Native) 形式导入。压缩音频文件必须在游戏运行时由 CPU 解压缩,但是具有较小文件大小。如果选中流式处理 (Stream),则音频会动态解压缩,否则它会在加载之后立即完全解压缩。原生 PCM 格式 (WAV、AIFF) 的好处是可提供较高保真度而不会增加 CPU 开销,但是这些格式的文件通常比压缩文件大得多。模块文件 (.mod、.it、.s3m、.xm) 可以提供非常高的质量,同时体积极小。
一般而言,压缩 (Compressed) 音频(或模块)最适合于较长文件(如背景音乐或对话),而原生 (Native) 更适合于较短声音效果。应使用压缩率滑块调整压缩量。从高压缩率开始,逐渐将设置减小到可察觉到声音质量损失的位置。然后,再次稍稍增大它,直至可察觉到的质量损失消失。
使用三维音频
如果音频片段标记为三维声音 (3D Sound),则其播放方式会模拟其在游戏世界坐标三维空间中的位置。三维声音通过衰减音量并在扬声器间平移来仿真声音的距离和位置。单声道和多声道声音都可以进行三维定位。对于多声道音频,使用音频源 (Audio Source) 上的传播 (spread) ,则其播放方式会模拟其在游戏世界坐标三维空间中的位置。三维声音通过衰减音量并在扬声器间平移来仿真声音的距离和位置。单声道和多声道声音都可以进行三维定位。对于多声道音频,使用音频源 (Audio Source) 组件参考。
平台相关详细信息
iOS
在移动平台上,压缩音频编码为 MP3 以利用硬件解压缩。
要提高性能,可以使用 Apple 硬件编解码器播放音频片段。要启用此选项,请在“音频导入程序 (Audio Importer)” 中选中“硬件解码”(Hardware Decoding) 复选框。请注意,一次只能解压缩一个硬件音频流,包括背景 iPod 音频。
如果硬件解码器不可用,则解压缩将重新由软件解码器进行(在 iPhone 3GS 或更高版本上,Apple 的软件解码器优先于 Unity 自己的解码器 (FMOD) 进行使用)。
Android
Unity 中的音频可以是原生 (Native) 或 压缩 (Compressed) 音频。Unity 支持大部分常见格式(请参阅以下列表)并将导入已添加至工程的音频文件。默认模式为原生 (Native),即导入原始文件中的音频数据时,不对其做任何更改。但是,Unity 也可在导入时只启用导入程序中的压缩 (Compressed) 选项压缩音频数据。(iOS 工程可使用硬件解码器 - 有关更多详细信息,请参阅 iOS 文档)。原生 (Native) 和压缩 (Compressed) 模式的区别如下:-
原生 (Native):原生 (WAV, AIFF) 音频适用于短音效。音频数据较大,但无需在运行时对声音解码。
压缩 (Compressed): 音频数据较小,但需要在运行时对数据进行解压缩,这将产生处理开销。Unity 会将音频编码为 Ogg Vorbis(Mac/PC/ 控制台 (Consoles))或 MP3(移动平台),具体取决于定位。如需获取最佳音质,请提供 WAV 或 AIFF(包括 PCM 数据)等未压缩格式的音频,让 Unity 为您进行编码。如果您现在只定位 Mac 和 PC 平台(包括独立式和网页播放器两种),则导入 Ogg Vorbis 文件不会降低质量。但是,在移动平台上导入时,将 Ogg Vorbis 和 MP3 文件重新编码为 MP3 文件,则会对音质有轻微影响。
任何导入至 Unity 的音频文件 (Audio File) 都可在脚本中找到其音频片段 (Audio Clip) 实例,其实际上是一个实用的音频数据存储工具。片段必须与音频源 (Audio Sources) 和音频侦听器 (Audio Listener) 配合使用才可生成声音。将片段添加至游戏中的对象时,这会将音频源 (Audio Source) 组件添加至含有音量 (Volume)、音高 (Pitch) 等许多其他属性的对象。播放源 (Source) 时,音频侦听器 (Audio Listener) 可"听到"范围内的所有源,将这些源组合起来,声音即可通过扬声器发出。您的场景中只能有一个音频监听器 (Audio Listener),并且监听器通常附属于主相机 (Main Camera)。
支持的格式
格式 (Format) 压缩格式 (Compressed as) (Mac/PC) 压缩格式 (Compressed as)(移动平台 (Mobile))
MPEG(1/2/3) Ogg Vorbis MP3
Ogg Vorbis Ogg Vorbis MP3
WAV Ogg Vorbis MP3
AIFF Ogg Vorbis MP3
MOD - -
IT - -
S3M - -
XM - -
有关 Unity 中更多声音使用信息,请参阅本手册创建游戏 (Creating Gameplay) 的 声音 (Sound) 部分。
音频片段 (Audio Clip)
音频片段 (Audio Clip) 包含音频源 (Audio Source)。 Unity 支持单声道、立体声和多声道音频资源(最多八个声道)。Unity 可以导入的音频文件格式包括 .aif、.wav、.mp3 和 .ogg 。Unity 还可以导入 .xm、.mod、.it 和 .s3m 格式的 tracker modules(跟踪器模块)。跟踪器模块资源的行为方式与 Unity 中的任何其他音频资源相同,不过资源导入检视器中不提供波形预览。
音频片段 (Audio Clip) 检视器 (Inspector)
属性
属性: 功能:
音频格式 (Audio Format) 运行时用于声音的特定格式。
原生 (Native) 此选项以较大文件大小为代价提供较高质量,最适合于非常短的声音效果。
压缩 (Compressed) 压缩可生成较小文件,但是与原生音频相比质量有所下降。此格式最适合于中等长度声音效果和音乐。
三维声音 (3D Sound) 如果启用,声音会在三维空间中播放。单声道和立体声声音都可以进行三维播放。
强制单声道 (Force to mono) 如果启用,则音频片段会降混为单声道声音。
加载类型 (Load Type) Unity 在运行时用于加载音频资源的方法。
加载时解压缩 (Decompress on load) 音频文件将在加载之后立即解压缩。将此选项用于较小的压缩声音可避免动态解压缩的性能开销。请注意,加载时解压缩声音使用的内存比保持声音处于压缩状态时大约多十倍,因此请勿将此选项用于大型文件。
在内存中保持压缩状态 (Compressed in memory) 使声音在内存中保持压缩状态并在播放时解压缩。此选项具有少量性能开销(尤其是对于 Ogg/Vorbis 压缩文件),因此仅将其用于加载时解压缩会使用过多内存量的较大文件。请注意,由于技术限制,在使用 FMOD 音频的平台上,此选项对于 Ogg Vorbis 资源会无提示地切换为从光盘进行流式处理 (Stream From Disc)(请参阅下文)。
从光盘进行流式处理 (Stream from disc) 直接从光盘对音频数据进行流式处理。此选项使用的内存通常是文件大小的一小部分,因此对于音乐或其他很长的音轨十分有用。出于性能原因,通常建议一次仅从光盘对一个或两个文件进行流式处理,不过可以从容处理的流数量取决于硬件。
压缩 (Compression) 应用于压缩片段的压缩量。 可以在滑块下查看有关文件大小的统计信息。调整此值的一个好方法是将滑块拖动到保持播放“足够良好”、同时文件小到足以满足分发要求的位置处。
硬件解码 (Hardware Decoding) (iOS (仅限 iOS)在 iOS 设备上,可以使用 Apple 的硬件解码器,从而在解压缩过程中产生较小的 CPU 开销。有关更多信息,请查看平台相关详细信息。
无缝循环 (Gapless looping) (仅限 Android/iOS)在压缩无缝循环音频源文件(采用非压缩 PCM 格式)时使用此选项可确保在对接处保持完美的连续性。标准 MPEG 编码器在循环点处引入了一个较短无声期,这可作为短暂的“嘀嗒”或“嘭嘭”声听见。
导入音频资源
Unity 支持压缩 (Compressed) 和原生 (Native) Audio. 音频。任何类型的文件(除了 MP3/Ogg Vorbis)最初都将以原生 (Native) 形式导入。压缩音频文件必须在游戏运行时由 CPU 解压缩,但是具有较小文件大小。如果选中流式处理 (Stream),则音频会动态解压缩,否则它会在加载之后立即完全解压缩。原生 PCM 格式 (WAV、AIFF) 的好处是可提供较高保真度而不会增加 CPU 开销,但是这些格式的文件通常比压缩文件大得多。模块文件 (.mod、.it、.s3m、.xm) 可以提供非常高的质量,同时体积极小。
一般而言,压缩 (Compressed) 音频(或模块)最适合于较长文件(如背景音乐或对话),而原生 (Native) 更适合于较短声音效果。应使用压缩率滑块调整压缩量。从高压缩率开始,逐渐将设置减小到可察觉到声音质量损失的位置。然后,再次稍稍增大它,直至可察觉到的质量损失消失。
使用三维音频
如果音频片段标记为三维声音 (3D Sound),则其播放方式会模拟其在游戏世界坐标三维空间中的位置。三维声音通过衰减音量并在扬声器间平移来仿真声音的距离和位置。单声道和多声道声音都可以进行三维定位。对于多声道音频,使用音频源 (Audio Source) 上的传播 (spread) ,则其播放方式会模拟其在游戏世界坐标三维空间中的位置。三维声音通过衰减音量并在扬声器间平移来仿真声音的距离和位置。单声道和多声道声音都可以进行三维定位。对于多声道音频,使用音频源 (Audio Source) 组件参考。
平台相关详细信息
iOS
在移动平台上,压缩音频编码为 MP3 以利用硬件解压缩。
要提高性能,可以使用 Apple 硬件编解码器播放音频片段。要启用此选项,请在“音频导入程序 (Audio Importer)” 中选中“硬件解码”(Hardware Decoding) 复选框。请注意,一次只能解压缩一个硬件音频流,包括背景 iPod 音频。
如果硬件解码器不可用,则解压缩将重新由软件解码器进行(在 iPhone 3GS 或更高版本上,Apple 的软件解码器优先于 Unity 自己的解码器 (FMOD) 进行使用)。
Android
在移动平台上,压缩音频编码为 MP3 以利用硬件解压缩。
本文章由游戏蛮牛unity3d整理推荐
unity3d资讯 http://www.unitymanual.com/forum-news-1.html
unity3d源码 http://www.unitymanual.com/forum-source-1.html