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 做手腕旋转骨骼等等:
以上。
- 关于之前评论区提到的的 “把游戏内控制表情的 AnimationClip 导出” 的问题,目前看来,AS 对于骨骼控制类表情只能做到“把模型以骨骼变形完毕的形式导出”,也就是一次只能导出一个而且不带形态键,也不可能在 PE 里做成 morph,不过可以作为做表情的参考,也许就不用再修正头部轮廓了。
参考专栏开头的内容,现在通过 blender 能够以形态键的形式导出骨骼表情。****然而因为是形态键所以无法在模型之间进行复制,并且每个模型都要导出一次。如果需要**共用**同一角色的表情,那就分离材质然后换脸。****当然,也可以按照原来那样自己手搓骨骼表情。
- 两个写这个专栏期间弄出来的没什么质量的配布视频:
现在能直接导出形态键,就没有重新回去修骨骼表情的必要了。
所有在写专栏时用来练手的改模全都被我放在了 dA 上,想搓表情的可以拿来参考。
本期专栏头图:
模型:2021 年 3 月黑 fes,[Fantast!c Now☆] 赤城みりあ
想不到 Pa 属性出的第一张黑 fes 限定就是自己的担当,太棒了。
抛砖引玉,这篇随手写的专栏在发布后进行了快一年的删改,同时收到了不少做其他游戏的改模时也能用到的技巧,实在是受益匪浅。
最后,放个自己担当的视频作为结尾:
祝各位普罗丢瑟和自己的担当玩的愉快。
米莉亚 & L.M.B.G. 担当 P
岸田夏海
2019/11/11