在 Dialogue Event 中添加了 State Group 和 State 后,您需要设置规则,用来表现游戏中的每个条件和结果。做到这点,需要将不同状态组和状态组合成路径(Path)。
由于涵盖每种情况或结果可能很困难,所以您最好创建每当声音引擎遇到尚未定义特定路径这种情形时可使用的后备或默认路径。这些后备路径使用状态组而非状态。
通过从对白事件内的各个不同状态组(State Group)中选择一种状态(State),您可以重建游戏中的不同条件和结果。选中的各个状态构成了一条路径。每条路径可与一段对话相关联,以便在游戏中出现特定的条件或结果时, 播放适当的语音对象。
技巧 | |
---|---|
如果您需要创建多条路径,则可以使用快捷方式来创建。要加快创建过程,将 Project Explorer 中的对象拖放到路径中最后一个未选中状态上去。Wwise 将自动创建新路径并将对象指派给该路径。有关此快捷方式的详细信息,请参阅“Dialogue Event 相关技巧和窍门”一节。 |
创建路径的方法如下:
将对白事件加载到 Dialogue Event Editor。
为对白事件中各个状态组点击一个状态。
Add Path(添加路径)变成激活状态。
点击 Add Path 创建一条路径。
路径于是就添加到路径列表了。
通过选择不同的状态组合来继续添加新的路径。
备注 | |
---|---|
要删除某条路径,请选择该状态系列或该路径本身,然后点击 Remove Path(删除路径)。 |
由于重建游戏中存在的各个条件和结果可能非常困难、非常耗时并且非常昂贵,所以您会希望有某种后备机制能涵盖那些您没有想到或没有时间创建的情况。在 Wwise 中,可通过创建后备路径来实现这种机制。这些后备路径包含若干个状态组而非状态,并且通常与一个更常规的声音对象相关联。例如,在即时战略游戏中,某些情形下某个操作的结果可能无法确定,例如您军团的最终目的地。要涵盖此情形,您可以创建一条路径,其中使用至少一个状态组而非状态。此路径之后将指派给一个声音对象,该对象用来代表行动的开放式结局。在您的军团前往最终目的地的情况下,声音对象可能是“Your army is advancing”(您的军团正在向前推进)。
在为游戏创建对话之前,脚本作者了解 Wwise 中后备算法的工作方法至关重要。假定您有一个包含以下状态组和状态的对白事件:
在游戏调用该对白事件时,该算法将尝试将游戏中的当前条件(例如(A1, B1, C1))与对白事件中的其中一条路径相匹配,以确定要播放的声音。在不只一条路径与游戏中当前条件匹配时,对白事件的模式将最终确定 Wwise 挑选路径和相应声音的方式。在对白事件处于“'Best Match”模式时,Wwise 将根据对白事件中创建的路径验证游戏中的当前条件,来查找完全的匹配项。如果未找到完全匹配项或找到了匹配路径但没有关联的对白,则算法将在后备路径中查找最近似匹配项(如果存在的话)。
在对白事件处于“'Weighted”模式时,Wwise 会查找所有匹配项,包括所有后备路径。从此匹配项列表中,该算法将查看每条路径的权重并依此确定选择哪条路径以及要播放哪段对话。
下图说明了“最佳匹配”决策算法如何验证所有可能匹配项以确定要播放哪个对象。
请注意决策算法如何从右到左查找后备。在我们的示例中,它会从 C 开始,然后查看 B,最后查看 A。如果所有其它可能组合都检查过了,则仅考虑最左侧的后备。
备注 | |
---|---|
您还可为对白事件创建通用路径。通用路径涵盖所有情况并且无论游戏触发何种状态,都可确保播放对白。 |
创建后备路径的方法如下:
将对白事件加载到 Dialogue Event Editor。
点击 State Group 或 Dialoque Event 中每个 State Group 的 State。
Add Path 按钮变成激活状态。
备注 | |
---|---|
在路径中需要选择至少一个状态组,以便创建后备路径。 |
点击 Add Path 创建一条路径。
路径于是就添加到路径列表了。
备注 | |
---|---|
如果某个状态组已用于创建后备路径,则该状态组在路径名称中会用星号 (*) 加以表示。 |
通过选择状态组和状态的不同组合,继续添加新路径。
备注 | |
---|---|
要删除某条路径,请选择该状态系列或该路径本身,然后点击 Remove Path(删除路径)。 |