截止至2023年5月:回过头来看,这篇写于去年的教程可能有些过时,有些东西也没讲到。
本文只简述尼尔机械纪元mod的制作流程,遇到困难时请到discord的NieR:Modding社区进行求助。
1. 软件及插件
所需工具主要有5个个。分别是CriPakGUI(用于解包游戏的pak文件)、Photoshop(用于制作以及导出游戏纹理和材质所需的dds文件)、Photoshop专用的DDS插件(可到NVIDIA官网下载)、Blender(用于导入、导出模型,对文件进行封包)、Blender的插件NieR2Blender2NieR(可到github下载,作者:WoefulWolf以及RaiderB)。请自行寻找及下载。
2. 流程(请先对上述软件及插件进行下载及安装)
对游戏进行解包,打开CriPakGUI

点击File-Open CPK-选择要解包的PAK文件(游戏的PAK的文件通常为游戏所在的盘\SteamLibrary\steamapps\common\NieRAutomata\data),然后点击Extrat me!-选择要导出的位置并完成导出。Cpk文件解包后的文件夹主要由pl(主要角色模型)、wd(场景模型)、wp(武器模型)、um(npc模型)、em(敌人模型)、et(物品模型)这几种组成,其他类型的文件及文件夹请自行探索。

以Data006.cpk文件为例,导出后会得到一个名为data006.cpk_unpacked的文件夹,内含em/et/pl/wp四个文件夹。这里要制作的pod模型位于wp文件夹(wp3000为2B的pod,wp3001为9S的pod)。
打开Blender软件,点击文件-导入-DDT File for Nier:Automata(.ddt),选择要导入的ddt文件。(在制作过程中请点击窗口-切换系统控制台来查看制作过程中是否存在错误,若遇到困难可以到discord的NieR:Modding社区进行求助


以下为制作过程中的注意事项,来源于https://github.com/WoefulWolf/NieR2Blender2NieR/wiki/Tips-&--What-Not-to-Do-When-Working-on-Models-(specifically-if-you-wish-to-put-them-back-into-the-game)


)

导入wp3000.dtt然后会得到pod的模型。


这个模型主要由17个物体以及骨架组成。
若要对17个物体进行分类,主要可以分为2类。一种是pod的主体模型,另一种是不同形态下的pod模型,若要对pod进行修改,请用带有body字样的物体进行修改,若要对不同形态下的pod模型进行修改,请自行尝试用带有mode字样的模型进行修改。
若要对模型全体进行修改,可以先对所有物体进行以下操作。
选择物体-按下tab键进入编辑模式选择面模式,

然后按A键进行全选

按住shift键同时点击鼠标左键选择不删除的面(不删除的面不会显示橘色)

按x键选择删除面

此时就剩下未删除的面

(如果未删除的面太大了会妨碍你要制作的模型,可以进入编辑模式对物体进行修改,请勿在物体模式下进行修改)
接下来导入你要制作的模型(为了不造成混乱,请先一个物体一个物体地进行修改,例如一个模型有3个物体,请先将其中1个物体导进来进行修改,然后再导入下一个物体进行修改直至完成全部的修改),这里从网上找了一个mama的模型(点击blender打开另外一个窗口,请勿在wp3000的这个blender进行新建,而是点开图标新建另一个文件)

在导入前请先清除顶点组、骨架,材质(若存在形态键也请删除)
若要删除顶点组:


点击右边的减号。
若要删除骨骼:
选中后按X键进行删除。
若要删除材质:


点击右边的减号。
然后选择要导入的物体,crtl+c复制然后回到wp3000的blender进行crtl+v粘贴。

这里为了方便制作,只显示要修改的物体0-body-0和导入的模型

选择0-body-0

删除所有UV贴图

然后点击导入的模型

按住shift点击鼠标左键选择0-body-0(最后选中的物体是橘色的)

Crtl+j合并为同一个物体,然后进行骨骼绑定。
关于骨骼的绑定,可先点击骨骼。

点击物体数据属性-视图显示-勾选“名称”和“在前面”用来查看骨骼名称,



要绑定哪一个骨骼请自行判断。

点击物体按tab进入编辑模式,选择面模式,按A键进行全选

在顶点组这选择顶点组然后点击指定(用于绑定骨骼)并赋予权重,若是找不到顶点组可以选择点击加号键进行添加,根据要绑定的骨骼来命名,例如bone62。

然后在UV贴图这添加UV贴图,请将添加的UV贴图命名为UVMap,UVMap2,UVMap3的格式。由于有的UV贴图需要多个贴图,在此添加到UVMap3。

此时也可在编辑模式里将原来的面进行删除(也可以不删)


接下来进行材质和纹理的制作(请随时保存你的blender文件)。
打开Photoshop,导入你要制作的DDS图片,
例如


点击文件-存储为-D3D/DDS

如果图像包含透明部分,请在 DXT3 或 DXT5 中导出.dds。
如果图像没有透明部分,请在 DXT1 中导出.dds(这是为了节省空间,不是必需的)。


导出后的DDS文件可以命名为任何名称(只需确保长度为 8 个十六进制字符(0-9,a-f)),例如a233b233

然后将DDS文件放到data006.cpk_unpacked\wp\nier2blender_extracted\wp3000.dtt\textures这个位置的文件夹里

或者可以将新文件命名为任何名称,如5efc5eca。要替换哪一个DDS文件请自行判断。
然后点击材质属性-自定义属性



在此列表中,你可以选择新的 DDS 纹理文件



g_NormalMap为法线贴图,需要另外制作法线贴图的DDS文件(例如

)。
附:此外,如果在封包后并进入游戏后,模型的贴图有不对的地方,进入编辑模式选择边模式(最好在线框模式下查看




选择其中一条红色的边

点击选择-选择相似-缝合边


然后按V键进行断离,然后重新封包。

在对每一个模型进行上述操作后,点击输出属性

点击NieR:Automata WTP/WTA Textures

点击Fetch All Materials和Fetch New Materials

点击Select Textures Diretory,选择放DDS文件的文件夹,例如
data006.cpk_unpacked\wp\nier2blender_extracted\wp3000.dtt\textures\

点击Select Textures Directory

然后点击Sync Identifiers in Materials和Sync Blender Materials

在选择材质预览模式确认模型情况


然后选择NieR:Automa Export进行封包

然后选择文件位置,点击DAT Directory 右边的文件夹符号,

选择文件夹位置,例如data006.cpk_unpacked\wp\nier2blender_extracted\wp3000.dat\
然后它会自动选择

然后选择导出DAT文件和DTT文件的位置(这里建议建一个名为wp的文件夹)

然后点击One Click Export ALL


然后将文件夹wp放到游戏所在的盘\SteamLibrary\steamapps\common\NieRAutomata\data


然后进入游戏查看模型

最后感谢Woeful_Wolf的热情帮助。
如需转载,请标明出处。
2022年7月31日
Hiruiyo
附:若是对人物模型进行修改,请自行根据物体名称进行判断(若觉得物体堆在一起不好判断,可以选择点击右边的眼睛符号来关闭显示一些模型)。


另附拆包数据网址:https://github.com/ArthurHeitmann/NierDocs/blob/master/docs/cpkAndDttContents/cpkAndDttContents.md (作者:RaiderB)