MMD 改模实验 CGSS 篇

本文由 简悦 SimpRead 转码, 原文地址 www.bilibili.com

作者:岸田夏海MK2

在知道 PE 可以做骨骼表情后,决定开始重新研究草菇的改模:また笑って スマートにね でも可愛く 進もう——游戏里的フォトスタジオ甚至还要用井碎去换动作 / 场景,屑。

在知道 PE 可以做骨骼表情后,决定开始重新研究草菇的改模:

また笑って スマートにね でも可愛く 進もう——

游戏里的フォトスタジオ甚至还要用井碎去换动作 / 场景,屑。

追记:自从找到导出游戏内表情的办法后,就不用再自己手搓表情了,本专栏内的骨骼表情部分也可以直接跳过不看:

不像之前 SIFAS 那样有人配了成品以供参考,dA 上那些做草菇改模的大多数都是只丢了张成品图而且不接私信,XeNTaX 等外区论坛上对这方面记录也是少之甚少。

也就是说,在开始写这篇专栏的时候我对草菇模型的了解几乎为零,如有问题,欢迎私信。

话先放在前面,私自进行版权游戏的拆包 / 改模毫无疑问是违反用户守则的,而在此基础上的进一步不当使用(也就是那些平常在各种改模的 Readme 里都能见到的禁止事项)可能会导致从 “吃到来自版权方的 DMCA” 到 “游戏在更新版本时改变数据包加密方式,让之前的逆向全部报废” 等不同程度的后果,并且之前也不乏类似案例——比如**米〇**〇的内鬼。********因此为了大家着想,请不要成为第一个当魔鬼的人。

本次改模目标:[ことほぎの祈り]依田芳乃

芳乃卖碟片,您买少了

说来也巧,就在这篇东西发布的一年后,重置的新手限定必得出了这张芳乃.....

下列粗体名字中,带 @标识的为 “作者本人 B 站账号”:

菜喵**顺德大槻唯**的草菇查卡器:https://starlight.346lab.org/

@esterTion 和星月佬 hozuki 的草菇 library 工具:

https://github.com/esterTion/libcgss

https://github.com/hozuki/libcgss

接下来是需要在本专栏内需要用到的东西——

一份解好的 card_data 表格(数据截止至 2019 年 9 月):

s/14T-VgF6QtpEM-n0lpfNLzQ  ed8y

然后是本次的重头戏,来自 @toyobayashi 的 cgss 一体化资源解包组件 mishiro,提供数据包差分下载、听歌、观看谱面等一系列功能的大型草菇工具箱:

https://github.com/toyobayashi/mishiro

向写出这个轮子,并且出现在评论区的 toyobayashi 大佬本尊,致以个人最崇高的敬意。

甚至 UI 都还原了游戏,人间之鉴如果想手动操作的话,草菇的数据包用的是 LZ4 压缩,过一遍 LZ4 解压可以得到 unity 文件,然而文件名还是 hash 之后的乱码。

如果想手动解数据包的话,草菇用的是 LZ4 压缩,所以过一遍 LZ4 解压可以得到 unity 文件——然而文件名还是 hash 之后的乱码。

CG 的一个自带衣服的 SSR 模型由五个文件构成, head - 头部模型及贴图,body - 身体模型,tx_body - 身体贴图,以及 head 的两个 shader,既然是 mmd 的话就不用考虑 shader,而只考虑前面三个文件。

打开 card_data,定位到对应的卡片:

charaid=262,open_dress_id=3339,成了

寻找 chara_id 和 open_dress_id 两项,然后定位文件,格式为:

头部模型:3d_chara_head+chara_id+open_dress_id,自带贴图

身体模型:3d_md_body+chara_id+open_dress_id

身体贴图:3d_tx_body+chara_id+open_dress_id

****如果不想一张张卡去对表(或者表格上没有的卡,毕竟是 19 年年底的版本),也可以直接对着 chara_id 一口气把同一角色的所有头部模型拉下来,然后根据对应的 open_dress_id 再去找身体部分的文件。

比如这次要改的芳乃:

3d_chara_head_0262_3339

3d_md_body3339_hq

3d_tx_body3339_hq

然后直接从 mishiro 里下就行了

mishiro 自带 LZ4 解压,所以下载下来就是可以直接丢进 asset studio 的 unity 文件。

以上说的是关于 SSR 模型的文件命名参考,关于通用衣服详见续篇:

有了 unity 文件后,就是惯例的 AS 拆包出 fbx 然后 Blender/C4D 导出为 pmx,不知道的详见上一篇 SIFAS 的专栏。

接下来是 PE 的环节,首先看看导出的内容物——一个身子和一个头以及对应的贴图:

打开 PE,首先对头做处理。

四个材质分别为红晕,头饰,头与眉毛,这里已经被我删去了前缀重命名了:

无法确定材质名对应目标的话,可以用 PE 最常用的功能之一 ,右上角的 “绞” 来查看:

显示全材质后发现脸上多了一块色块:

脸上多出来的部分本来应该是脸部红晕,而由于贴图缺乏 alpha 通道导致直接变成了色块。

把两个文件名带 cheek 的图拖进 PS:

合并完成

通道(cheek_A)作为贴图(cheek_C)的蒙版导出:

回 PE 重贴贴图:

然后调整材质顺序,让 cheek 位于最下层,从而避免由于渲染次序导致的透明:

强烈推荐使用那个方式,毕竟光游戏内的表情已经够 mmd 用了,使用该方法则请直接跳过该节,不过会用 Blender 改模的大概也用不到这个专栏剩下的内容了。

而对不打算用 Blender,或者想自己做表情的,可以按接下来的内容来做骨骼表情。

新建空的 Bone Morph,这里先按照 MMD 基准表情格式命名六种眼部表情和口型。

这里只是先加入空表情

接着,开始对控制左右眼、左右眉毛以及嘴巴 / 牙齿上下半的骨骼进行分组。

首先是眼睛:

这两个 eyelocato 为 unity 用骨骼,可以删除 这些骨骼基本囊括了眼睛的所有部分

然后开始进行分组和表情制作,这里以左眼眨眼为例,首先找到控制左眼的骨骼,将 “移动” 按钮点亮:

同时,复制这些骨骼的 index,将其粘贴至 “左眼眨眼” 的表情栏中:

在开始做 bone morph 前,先引用一下 CGSS 内的 MV 效果,非常感谢长期进行草菇和土豆的 MV 录制的大佬 @十六夜カズヤ P 友情提供的图片:

插句题外话,炎の華和芳乃 solo 的 M + 谱绝对是 Album C 里的屑中之屑

通过几张图和 MV,基本就定位了眼睛和口型大致应该达到的样子,接下来就是通过调整每一个 Bone Morph 里各个骨骼的 XYZ 轴(主要是 Y 轴)位移并在 Transformviewer 里进行校对,逐渐逼近游戏内的表情,这一步相当费时间:

这个左眼闭眼的表情一共涉及了 8 个围着左眼的骨骼 右眼同理 只要把上面那个左眼闭眼的表情复制一下,然后把所有 X 轴位移取相反数,然后把骨骼 index 全部 + 1 变成右眼骨骼即可 然后用一个组表情把它们一起括起来 嘴部同理,记得把牙齿骨骼也一起位移掉 草菇游戏内的对比图

Unity 的轮廓描画方式和 MMD 自然是不同的,因此不建议给模型添加轮廓。

然而如果执意这么做的话——

显而易见的边缘问题、

为了解决这个问题,在 dA 发了一篇 post 问了问,然后惊喜的发现 Arisumatio 回复了我:

...

(这位 arisumatio 大佬已经在 dA 弄了快五年的各种游戏改模,范围从 OW 到口袋妖怪到 SIFAS 到锄宗甚至到假面骑士等等,还好他没打 cgss 的主意,不然这篇专栏大概就要泡汤了。)

回到正题,通过额外设置一个隐形带轮廓的材质的方法的确相当有效。

下图可能包含恐怖要素

请做好心理准备,或是 roll 一个 SanCheck 在观看

将复制出来的材质的嘴部和眼部附近的点和面全部裁去

复制一份材质,把面部扣去一块,如果想偷懒的话可以善用 PE 的 “邻接面选择” 功能(Ctrl+X),直接把整个脸的材质分离出来,并只给原先的 head 添加轮廓:

将复制的材质的非透过度设置为 1(也就是透明)并开启轮廓线 然后重新显示材质,发现刚才被裁去的部分没有了边缘线而别的部分依然保留

表情的问题也随之解决:

自此头部已经全部完成,把整体拉高点,为接头(物理)做准备。

做完一定要记得保存,别问我为什么要在这强调这个。

两个方法。

其一

记录下身体部分中 "Neck" 的位置:

在 TranformView 里把头部模型的 “Neck” 骨骼移动到对应位置,并保存 / 更新到 Pmx 视图中

打开身体部分模型,直接导入头部 Pmx 即可,由于是同名骨骼,导入时直接自动合并,不用再进行额外调节。

其二

如果看不懂上面的内容的话,那就手动开始公主焊接吧。

打开之前导出的的身体那一部分的模型:

头和身体的接口部位骨骼 neck 和 head 要么不改名,要么都统一改成首和頭,不然接不上

然后直接把刚才做好的头部导入:

保持默认状态导入,三个√务必要打上,让同名骨骼进行重合(merge):

公主焊接(物理),将头位移到脖子上,做到没有错位就行

也可以通过三视图和边缘线进行校验:

顺带一提,这一步强烈建议用 PE 自带的三视图功能

自此就可以开始准备改模了,骨骼命名正规化,重新设定亲 bone,做物理做刚体做 IK 做手腕旋转骨骼等等:

以上。

  1. 关于之前评论区提到的的 “把游戏内控制表情的 AnimationClip 导出” 的问题,目前看来,AS 对于骨骼控制类表情只能做到“把模型以骨骼变形完毕的形式导出”,也就是一次只能导出一个而且不带形态键,也不可能在 PE 里做成 morph,不过可以作为做表情的参考,也许就不用再修正头部轮廓了。

参考专栏开头的内容,现在通过 blender 能够以形态键的形式导出骨骼表情。****然而因为是形态键所以无法在模型之间进行复制,并且每个模型都要导出一次。如果需要**共用**同一角色的表情,那就分离材质然后换脸。****当然,也可以按照原来那样自己手搓骨骼表情。

  1. 两个写这个专栏期间弄出来的没什么质量的配布视频:

现在能直接导出形态键,就没有重新回去修骨骼表情的必要了。

所有在写专栏时用来练手的改模全都被我放在了 dA 上,想搓表情的可以拿来参考。

本期专栏头图:

模型:2021 年 3 月黑 fes,[Fantast!c Now☆] 赤城みりあ

想不到 Pa 属性出的第一张黑 fes 限定就是自己的担当,太棒了。

抛砖引玉,这篇随手写的专栏在发布后进行了快一年的删改,同时收到了不少做其他游戏的改模时也能用到的技巧,实在是受益匪浅。

最后,放个自己担当的视频作为结尾:

祝各位普罗丢瑟和自己的担当玩的愉快。

米莉亚 & L.M.B.G. 担当 P

岸田夏海

2019/11/11

评论