定义音频资源
在游戏配置文件中,您可以使用 <AudioDef> 元素来定义音频资源。每个 <AudioDef> 元素都必须包含在顶层的 <Define> 元素之内,并遵循其通用的属性定义规则。
功能介绍
<AudioDef> 用于加载和配置游戏所需的各种音频资源,例如背景音乐、音效、语音等。您可以通过它指定音频文件的存储路径。
参数说明
所有的参数都必须通过嵌套元素的方式进行赋值。
-
<defName>(必需,字符串)- 该音频定义的唯一标识符。在整个游戏配置中,此名称必须是全局唯一的,除非您有意覆盖现有定义。
- 作为匿名定义时,此字段可以省略。
-
<label>(可选,字符串)- 提供一个人类可读的标签,用于更好地理解该音频定义的用途。
-
<description>(可选,字符串)- 提供更详细的文本描述,解释该音频定义的具体内容或特殊用途。
-
<path>(必需,字符串)- 指定音频资源的实际存储路径。
- 路径前缀约定:
otherPackID:相对地址: 表示加载otherPackID包下的相对路径音频资源。- 空前缀: 表示加载当前定义所在包的相对路径音频资源。
res:相对地址: 表示加载游戏编译过程中,项目Resources文件夹下的音频资源。res:前缀的优先级高于包 ID 前缀。
引用方式
- 当其他定义需要引用某个音频资源时,始终使用该音频定义的
defName。
示例
示例 1:定义背景音乐
<Define>
<AudioDef>
<defName>BackgroundMusic_MainTheme</defName>
<label>主界面背景音乐</label>
<description>应用于游戏主界面的循环背景音乐。</description>
<path>Audio/BGM/main_theme.mp3</path>
</AudioDef>
</Define>
在其他定义中引用此音频:BackgroundMusic_MainTheme
示例 2:定义一个来自 Resources 文件夹的音效
<Define>
<AudioDef>
<defName>UISound_Click</defName>
<label>UI点击音效</label>
<description>用于按钮点击时的反馈音效。</description>
<path>res:Sounds/UI/click.wav</path>
</AudioDef>
</Define>
在其他定义中引用此音频:UISound_Click
示例 3:定义一个来自其他包的语音文件
<Define>
<AudioDef>
<defName>Dialogue_Greeting</defName>
<label>角色欢迎对话</label>
<description>角色首次见面时的语音问候。</description>
<path>DialoguePack:Voice/greet_player.ogg</path>
</AudioDef>
</Define>
在其他定义中引用此音频:Dialogue_Greeting
注意事项
- 路径前缀优先级:
res:前缀的解析优先级最高,其次是包 ID 前缀,最后是当前包。 defName唯一性: 强烈建议所有<AudioDef>的defName都是全局唯一的,以避免在加载和引用时出现混淆或不确定的行为。如果存在重复的defName,后加载的定义将会覆盖先加载的。- 匿名定义: 当
AudioDef作为其他定义的内部结构使用时,defName可以省略,此时它将作为一个匿名的、局部可用的音频定义。在这种情况下,该音频无法通过名称在外部引用。 - 音频格式: 请确保您引用的音频文件格式是游戏引擎支持的格式(例如 .mp3, .wav, .ogg 等)。