红色警戒2中的游戏单位模型概述

hi,大家好,这里是烈葱
这次将会为大家简单地讲解红色警戒2中的游戏模型文件及其区别。
=====START=====
首先,游戏中的模型分为两种,一种是vxl后缀的体素模型,一种是shp后缀的动画文件。
VXL:

VXL体素模型类似于3维模型,由一个个像素点构成一个完整的立体单位模型。

游戏中除了恐怖机器人、海豚、巨型乌贼以外的所有从战车工厂、空指部、船坞建造出来的装甲单位均为vxl模型单位。

vxl文件只包含了像素点位置以及颜色编号,实际在游戏中生效还需要对应色盘(默认使用游戏自带色盘)以及hva后缀的定位文件一起才能展现出一个良好的模型。

HVA:
HVA文件是给vxl文件定位用的,里面规定了每个vxl部件在X/Y/Z空间直角坐标系中的具体位置,直升机的螺旋桨转动也是在hva中添加帧来实现(注意,镭射幽浮是ini中的代码决定旋转的,并非hva文件设定)。
部件(例如炮塔)需要旋转时,会沿着hva坐标系中的Y轴转动,所以如果炮塔位置偏移,那旋转时便不再以炮塔的中心为旋转轴。
部分单位(例如磁电坦克)炮塔并不是在车体中间位置,而是靠后/前安装,这时候就需要先把炮塔中心调整到Y轴上,再在Artmd.ini里通过TurretOffSet语句来设定炮塔后/前移多少,否则在游戏中坦克旋转炮塔时会出现明显的旋转轴错位。
SHP:

SHP文件实质上就是一连串的多帧动画。
恐怖机器人、海豚、巨型乌贼、所有步兵、绝大多数建筑(有炮塔的炮塔是vxl模型,底座是shp)、图标、动画特效均采用SHP文件。
SHP同样只记录了颜色编号,运行时便从对应色盘中提取对应编号的颜色。
shp有着几套动画序列,一般包含面向各方向的站立、移动、攻击、匍匐、死亡帧,部分包含部署动画、部署后、部署后攻击帧,奴隶还含有挖矿帧。
在制作人形机甲类模型上,shp比vxl要方便得多,只需要做好每一帧的样子即可,不需要像vxl那样一帧一帧设置每个部件在每一帧的位置,而且也可以把开火动画包含进去。
由于是多帧动画,所以shp单位在斜坡上时不能像vxl单位一样倾斜。
在复刻其他游戏的模型方面,转成shp单位的往往比转成vxl的更加普遍
=====END=====
如有错误,欢迎指正
这里是烈葱,喜欢就支持一下我吧~