Wwise Components/Types 显示的数据过时或不一致
若发现 Wwise Components(如 AkAmbient
或 AkState
)丢失对 Wwise 对象的引用,则表示您可能将 AkWwiseProjectData.asset 添加到了版本控制系统中。若 AkWwiseProjectData.asset 被锁定(在将其添加到版本控制系统中时经常会出现此问题),则将按照 AkWwiseProjectData##.asset 形式创建新的文件。若出现这种情况,请将其全部删除,然后在 Wwise Picker 中单击 Auto populate,以便重新生成文件。
| 备注: | 请不要将 AkWwiseProjectData.asset添加到版本控制系统中! 它只是 Wwise 工程数据的临时缓存文件,目的在于避免 Wwise Picker 反复解析 Work Unit 文件。 |
安装后的编译错误
如果刚从以前的 Wwise 版本升级到了新版本,那么您可能会有重复的脚本。在版本 2013.2.8 中,UNITY_PROJECT_ROOT\Assets\Wwise\Deployment\Examples
文件夹重命名为 Components
。如果您没有对 Examples
文件夹中的脚本作出任何更改,那么只需要删除它。
另外,如果您是在多个平台上开发,请确保已经为每个开发平台安装了 UnityPackage。有一些脚本是特定于平台的。
在 Unity 控制台中的 DllNotFoundException
如果您在 Windows 的 Unity 控制台中看到一个关于 AkSoundEngine 的 DllNotFoundException 消息,这可能是由两个缺失的依赖项引起的:
- 确保您的机器上安装了DirectX。
- 如果您正在使用 Wwise-Unity 集成的
Debug
config,那么还需要安装Microsoft Visual Studio 2010 Debug Redistributables。通常情况下,默认会安装 Profile
配置,所以这应该不是问题,除非您时手动安装的 Debug
config。
没有任何声音
如果您在游戏中没有听到任何声音,请检查以下内容:
- 如果在单机上运行游戏时没有声音,请试着在 Windows 或 Mac 的 Editor 中运行您的游戏。先在编辑器中解决问题会比较容易。
- 确保您的 SoundBank 已经正确地生成了,并且 Unity 能够找到它们。如果您在编辑器中运行该游戏,那么集成将从 Wwise 工程中的 Generated SoundBanks 路径中寻找 SoundBank。如果没有找到,它接下来将会查看 StreamingAssets 文件夹。注意,如果您选择在 Wwise 中不沿用工程 SoundBank 路径,那么集成将无法自动加载它们。想了解关于该问题的更多信息,请参阅 为目标平台构建您的 Unity 游戏
- 确保在发出任何其它音频调用之前,Sound Engine 已经正确地初始化了,并在所有引擎调用完成后,Sound Engine 终止了。您需要确保针对 AkInitializer 正确设置 Script Execution Order (Edit > Project Settings > Script Execution Order)。
- 确保在 Wwise Project Settings 对话框中取消选中 Enable Auto-Defined SoundBanks 选项。
- 确保 Unity Console 中没有报告错误。
- 如果在运行游戏时连接到 Wwise Profiler(在 Wwise 中是 F7),那么在 Capture Log 中有错误报告吗?
- 在 Wwise Profiler 的 SoundBank 选项卡中,您可以看到加载的库吗?如果看不到选项卡,打开 Profiling Settings(Alt-G)并启用 SoundBank。如果它们没有装载,应该检查您何时以及如何装载它们。查找 AkBank 组件和
AkSoundEngine.LoadBank
调用。
- 在 Wwise Profiler 中,在 Capture Log 中,您可以看到预期要发布的 Event 吗?如果没有,您应该检查 SoundBank 是否包含这些 Event,以及它们是否正确加载了(请参阅前面的要点)。如果库已经被加载了,那么应该检查您游戏脚本中的 AkEvent,AkAmbient 组件和
AkSoundEngine.PostEvent
调用。
无法连接 Wwise Profiler
如果您的游戏运行在 Windows 上,请检查以下内容:
- 验证 Unity 中,
Run
in
background
设置已经启用(menu File > Build Settings > Player Settings)。
- 验证您机器上的防火墙允许端口 24024,以及 Wwise 设置为一个特例。如果防火墙被禁用了,那么就不是这个问题了。
- 您正在运行 Wwise-Unity Plug-in 的哪个配置?只有
Debug
和 Profile
启用了通信代码。
- 打开 Task Manager,杀死任何名为 "adb.exe" 的进程。这是 Android 驱动程序,它锁定 TCP 端口。即使您开发的不是 Android 系统或连接了任何 Android 设备,这都是一定的。(这是 Google 的问题。)
如果您的游戏在另一台计算机或控制台上运行,请检查以下内容:
- 您的 Wwise 电脑和游戏机在同一子网上吗?如果没有,游戏将不会出现在 Remote Connection 对话框中。手动输入 IP,和
Connect
To
IP
按钮。
- 您的网络允许端口 24024 上的 traffic 或动态端口分配吗?
安装过程中的错误 —— 在 Unity 控制台中访问路径被拒绝
如果您在 Unity 控制台中看到 Wwise: Error during installation: Access to the path is denied 消息,请检查以下内容:
- 您是否立即尝试过从 Assets > Wwise > Install Plugins 菜单安装一个新的插件配置(
Debug
, Profile
, Release
):
- 从
Wwise
Setup
窗口安装新的 Unity 集成?
- 在 Unity Editor 中预览一个 Scene?
- 立即重新打开您的 Unity 工程并安装新的 Plug-in 配置(
Debug
, Profile
, Release
)。
在用于 Mac 的 Wwise 上,在生成 SoundBank 过程中出现错误 —— 不能写入 Wwise_IDs.h
如果在使用用于 Mac 的 Wwise,在生成 SoundBank 过程中您看到一个错误,即不能写入 Wwise_IDs.h,那么检查如下内容:
- 打开 Wwise 工程。
- 在工程设置中,前往 SoundBanks 选项卡。
- 将
Header file path
设置到 SoundBank 生成的地方。
错误:插件没有注册
您的 Wwise 工程使用了一个需要授权的插件,而它还没有包含在您的 AkSoundEngine 动态库中。请参阅 添加插件 。
在 Mac 上,Unity Console 中显示 "Multiple plugins with the same name"
使用用于 Mac 的 Unity,在导入 Integration 时,Unity Console 可能会显示很多如下的错误:
- Multiple plug-ins with the same name 'aksoundengine' (found at 'Assets/Wwise/API/Runtime/Plugins/Mac/Release/AkSoundEngine.bundle' and 'Assets/Wwise/API/Runtime/Plugins/Mac/Debug/AkSoundEngine.bundle'). 这意味着一个或多个插件将设置为与 Editor 兼容。Editor 一次只能使用一个插件。
这些错误可以被忽略,这很安全,因为安装过程将正确地激活正确的插件。
在安装了 Google Play Services 的工程中无法整合或迁移 Wwise
在将构建目标设为 Android 时,在安装了 Google Play Services 的 Unity 工程中,Audiokinetic Launcher 无法整合或迁移 Wwise。若要摆脱此限制,请打开 Unity 工程并将构建目标设为 Android 以外的平台,然后关闭 Unity 并通过 Launcher 重新实施整合或迁移。