补档:04.【拓展研究】玻璃破碎数据指南 (.cwgv文件)

《ZM3 GTA5 导入与导出插件》技术文档
原创教程:零贰
以下是技术文档的目录:
01. GTAV 导入与导出插件的准备工作:如何安装 ZM3.1.0
02.【基础知识】GTA V:场景层级,复合物体,几何体模型
03. 【使用指南】ZM3《GTA V 导入与导出插件》使用指南
04.【拓展研究】GTA V:玻璃破碎数据指南 (*.cwgv 文件)
05.【扩展研究】GTA V 着色与材质,车体效果,载具灯光,贴图等的指南
06.【扩展研究】GTA V:物理特性和碰撞体指南
写在前言,前一篇介绍了《GTA V 导入与导出插件》的使用,接下来的三篇翻译文档属于对
MOD 的扩展研究,介绍了一些载具模型的属性和设置。本篇是扩展研究的第一篇,介绍载
具玻璃的数据。
04. GTA V: Glass crash data guide. (*.cwgv)
04.【拓展研究】GTA V:玻璃破碎数据指南 (*.cwgv 文件)
原创翻译:零贰
载具模型通常包含有一组玻璃物件:前挡风玻璃,后挡风玻璃,车门玻璃。这些玻璃物件可
以通过射击,或与其他物体撞击而破碎。在玻璃破碎的这个过程中,包含了破碎后的玻璃如
何渲染,以及破碎后的形态。这个渲染的过程是游戏在后台通过代码来处理的,这些数据都
包含在了“*.yft”文件中。不过这些数据并不是直接指明玻璃破碎后的形状,而是仅仅指明玻
璃破碎后洞口的大小,接着玻璃根据这个限定来随机生成玻璃的破碎形状。
下图中上方的车辆展示的是游戏原本的玻璃(黄色线框)被击碎后,玻璃破碎的形态(红色
线框);下方的车辆展示的是我修改后的玻璃破碎形状(红色线框)和游戏原本的玻璃(黄
色线框),游戏原本的玻璃跑到了左侧并且发生了旋转,并且破碎数据依旧在原本的玻璃上
发生。

这个特征告诉我们玻璃的破碎效果和实际的车玻璃模型并没有直接联系,既然如此,那么也
就给了我们机会在我们自己的载具 MOD 上使用这些游戏原始的玻璃破碎数据了。
当你在导入一辆载具时,ZM3 GTA V 导入插件会生成一组“*.cwgv”文件,这些文件包含了这
辆 载 具 的 所 有 玻 璃 破 碎 数 据 ,( 如 : 前 挡 风 玻 璃 “windscreen.cwgv” , 后 挡 风 玻 璃
“windscreen_r.cwgv”,左前车门玻璃“window_lf.cwgv”,右后车门玻璃“window_rr.cwgv”)。
这些文件分别对应了相关的部件,而导出插件可以利用这些文件重新编写载具的玻璃破碎数
据,你只需要将这些文件复制到你即将导出的载具所在的相同文件夹内。
而更加方便的是,如果你制作的载具 MOD 拥有不同的玻璃形状,你可以去搜索游戏内符合
你 MOD 的车辆玻璃,然后应用到你的 MOD 上。譬如你可以从游戏的一辆车上拿下前挡风
玻璃的破碎数据,然后从另一辆车上拿下后挡风玻璃的破碎数据。你只需要找到一样的位置、
尺寸和角度的车玻璃就可以。如果你没有将玻璃破碎数据应用到你的 MOD 上,那么导出载具依旧会创建一个空白的碰撞
破碎数据文件。在游戏内,你的玻璃依旧可以按照设计的位置来破碎,并且显示出一个洞口,
但是在这个洞口边将没有那些破碎的细节,譬如破碎后的蜘蛛网或者小碎片等。这看起来实
在不怎么好看,所以在制作 MOD 时,最好花一点时间去游戏的载具源文件内找一下合适的
破碎数据。
通过研究,我们可以发现玻璃破碎后的洞口是由载具玻璃“vehicle_vehglass”和载具玻璃内部
着色器“vehicle_vehglass_inner shaders”来单独绘制的,游戏引擎的其他着色器则不支持这个
功能。
为了让你的玻璃能够被撞碎,你需要为玻璃的碰撞体模型设置一个碰撞数据。如果你不知道
如何设置这个数值,那么可以去参考你要替换的游戏原本载具,看一下原本的载具数值是怎
样的。另外,为了避免在场景中错误选择了复合体部件,最好在设置时点击“COL”声明按钮,
让其他的模型暂时隐藏掉。
下图是一个前挡风玻璃的碰撞数值样本。
