版本

menu_open
Wwise SDK 2021.1.14
导入音频文件和创建架构

有好几种方式在 Wwise Authoring API 中创建 Wwise 对象。

创建 Wwise 对象

利用 ak.wwise.core.object.create ,可以创建大部分 Wwise 对象。如需进一步了解相关限制,请参阅 ak.wwise.core.object.create 相关限制

理解名称冲突模式

在调用 ak.wwise.core.object.create 时,可以指定以下四种之一的名称冲突模式:

如果在目标位置存在同名对象:

  • fail:创建功能返回一个错误。
  • replace:目标位置的原对象(及子级)被删除,新的对象被创建出来。
  • rename:为新的对象自动指派一个不会重名的名称(在名称上添加数字)。
  • merge:目标位置的对象被重新使用,而其指定的属性、引用和子级被合并到目标位置,对象的剩余部分不变。

ak.wwise.core.object.create 相关限制

Sound SFX

利用 ak.wwise.core.object.create ,可以创建 Sound SFX(音效)对象。不过,存在以下主要限制:

  • 无法将原始 WAV 文件关联到子级 Audio Source(音频源)对象。
  • 无法将语言关联到子级 Audio Source 对象。

鉴于以上原因,在我们完全支持这些功能之前,建议不要使用 ak.wwise.core.object.create 创建 Sound SFX。请改用 导入音频文件ak.wwise.core.audio.import

Work Unit

在使用 ak.wwise.core.object.create 创建 Work Unit(工作单元)之前,需要先清理撤消/重做历史记录和剪贴板。 Work Unit 会在创建的同时保存,便于在工程中快速创建对应的 WWU 文件。

  • onNameConflict 参数只能是 'fail''merge''rename'。不支持 'replace' 模式。

Query

无法使用 ak.wwise.core.object.create 创建 Query(查询)对象。

使用 ak.wwise.core.object.create 来创建一个 actor-mixer:

请参阅 ak.wwise.core.object.create 了解更多信息。

{
"parent": "{a9129d80-07e0-11e7-93ae-92361f002671}",
"type": "ActorMixer",
"name": "My Actor-Mixer",
"children": []
}
备注: 父字段显示了在工程中的何处创建项目。parent 字段跟大部分 Wwise 对象字段一样支持对象 ID (GUID) 和对象路径。想要获取对象 id,请参阅 ak.wwise.core.object.get. 比如,您可以通过对象的工程路径来获取它的对象 id。
备注: 想要从 Wwise 工程中获取对象 id,您可以按住 SHIFT 键同时右键单击一个对象,然后选择 Copy GUID(s) 复制到剪贴板上。

使用 ak.wwise.core.object.create 在属性中创建对象层级:

请参阅 ak.wwise.core.object.create 了解更多信息。

{
"parent": "{a9129d80-07e0-11e7-93ae-92361f002671}",
"type": "ActorMixer",
"name": "Weapons",
"@Volume": "-2",
"children": [
{
"type": "RandomSequenceContainer",
"name": "BigGun",
"@RandomOrSequence": "1",
"children": [
{
"type": "Sound",
"name": "Gun1",
},
{
"type": "Sound",
"name": "Gun2",
}
]
}
]
}

使用 ak.wwise.core.object.create 创建 Event

请参阅 ak.wwise.core.object.create 了解更多信息。

{
"parent": "\\Events\\Default Work Unit",
"type": "Folder",
"name": "WAAPI",
"onNameConflict": "merge",
"children": [
{
"type": "Event",
"name": "Play_SFX",
"children": [
{
"name": "",
"type": "Action",
"@ActionType": 1,
"@Target": "\\Actor-Mixer Hierarchy\\Default Work Unit\\SFX"
}
]
}
]
}

如需查看可用事件属性和动作类型列表,请参阅 Action

导入音频文件

音频文件可以通过 Audio File Importer(音频文件导入器) 用制表符分割导入中同样可用的导入处理器, 使用 Wwise Authoring API 导入。

使用 Wwise Authoring API 能做到导入过程的完全自动化,同时您可以用自己选择的编程语言来直接控制。

导入格式非常灵活。您可以导入:

简单来说,音频文件导入过程中允许:

  • 导入和本地化音频文件
  • 自动创建 Actor-Mixer 层级结构
  • 创建 Event(事件)
  • 指派属性值,如 Volume(音量)
  • 指派引用,如 Output Bus(输出总线)

有关此功能的详情,请参阅 https://www.audiokinetic.com/library/edge/?source=Help&id=importing_media_files_from_tab_delimited_text_file

备注: 最好使用 ak.wwise.core.audio.importTabDelimitedak.wwise.core.audio.import ,来同时创建 Sound SFX 对象并导入音频文件。目前无法将音频文件和语言关联到所创建的对象,所以建议不要使用 ak.wwise.core.object.create

示例:

导入一个 WAV 文件,并创建关联的 Sound 对象。

使用 ak.wwise.core.audio.import 导入音频文件

请参阅 ak.wwise.core.audio.import 了解更多信息。

{
importOperation: "createNew",
default: {
importLanguage: "SFX"
},
imports: [
{
objectPath: "\\Actor-Mixer Hierarchy\\Default Work Unit\\<Sound>MyNewSound1",
audioFile: "C:\\Wave\\cues\\1.wav",
"@Volume": 0.42
},
{
objectPath: "\\Actor-Mixer Hierarchy\\Default Work Unit\\<Sound>MyNewSound2",
audioFile: "C:\\Wave\\cues\\2.wav",
"@Volume": 0.1
}
]
}

使用 ak.wwise.core.audio.import 本地化音频文件

请参阅 ak.wwise.core.audio.import 了解更多信息。

以 English 形式导入 Sound Voice:

{
importOperation: "useExisting",
default: {
importLanguage: "English(US)"
},
imports: [
{
objectPath: "\\Actor-Mixer Hierarchy\\Default Work Unit\\<Sound>MyVoice",
audioFile: "C:\\sources\\en\\Hello.wav"
}
]
}

以 French 形式本地化 Sound Voice:

{
importOperation: "useExisting",
default: {
importLanguage: "French"
},
imports: [
{
objectPath: "\\Actor-Mixer Hierarchy\\Default Work Unit\\<Sound>MyVoice",
audioFile: "C:\\sources\\fr\\Hello.wav"
}
]
}
备注: 确保工程中存在相应语言且大小写匹配。

此页面对您是否有帮助?

需要技术支持?

仍有疑问?或者问题?需要更多信息?欢迎联系我们,我们可以提供帮助!

查看我们的“技术支持”页面

介绍一下自己的项目。我们会竭力为您提供帮助。

来注册自己的项目,我们帮您快速入门,不带任何附加条件!

开始 Wwise 之旅