UDN
Search public documentation:
DialogSystemCH
English Translation
日本語訳
한국어
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
日本語訳
한국어
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
对话系统
动态载入音频
非脚本化的对话
- 烘焙器将生成需要烘焙的包的列表。当这个过程完成时,它将会调用烘焙器助手,在那里它添加需要生成到列表中的GUD线路堆。这些是‘假的’包,因为它们实际上是不存在的。助手只是插入它知道的需要创建的包的名称。在这个过程中,它将根据上面的描述把源GUDBanks细分为几个较小的线路堆。它也会生成对话中使用的声效及FaceFX 动画的列表,以便稍后再系统中使用。(这个信息将存储在永久的烘焙器数据中,从而避免每次运行烘焙器时重新生成它。) 同时,目录包也会被放到那个映射‘父项’GUDBank类到细分的GUDBank包的列表上。
- 烘焙器将会迭代列表中的所有包,加载每个包并烘焙包中的每个对象。当加载一个包时,它将首先调用助手来允许它加载那个包。在GUDS的情况中,这是助手在游戏运行中创建包并返回它的地方。这涉及到创建一个新的GUDBank,并使用适当的线路填充它。当给pawn设置线路堆时,任何FaceFX动画也会被插入到新的AnimGroup中。它将会设置一个中间标志预示GUD包是否已经被烘焙,以便在后面的过程中使用。如果助手程序不需要对给定的包文件做任何特殊处理,那么将返回NULL,并且烘焙器将会按照标准的方式来加载包。会对所有的非-GUDS包执行这个过程。
- 当加载包后,助手程序将调用一个滞后加载函数。在GUDS系统中,如果包是GearGame或GearGameContent,那么助手程序将会找到原始的GUD线路堆,并清楚它们的内容。这样是为了避免线路被放入到它们的烘焙包中。(注意,这个操作也可以在真正的GUDBank对象烘焙过程中完成,但是它演示了烘焙器助手程序的PostLoad函数的应用示例。)
- 烘焙器然后迭代包中的每个对象来烘焙它。它将首先调用助手程序的CookObject函数,这将返回一个布尔值,该值预示标准的烘焙器是否应该进一步处理那对象。在GUDS助手程序中,如果对象是一个位于引用列表中的声效并且那个包不是GUDS包,那么声效将会被设置为
MarkedByCooker
,以避免把它烘焙到当前的包中。如果它是GUDS包,那么将会把它设置为强制导出,如果需要也会修复它的FaceFX动画组的名称。如果那个对象是FaceFX资源或动画集,并且它不是一个GUDS包,那么将会从那个集合中删除GUDS使用的任何引用的动画。