雪糕小鹿乱撞MMD记录

技术栈

物理模拟:

  • 胸部物理:blender布料模拟
  • 衣服物理:MD物理解算
  • 头发物理:blender布料模拟
  • 猫耳Q弹效果:blender布料模拟

渲染:

  • 黑丝:次表面+菲涅耳+伪各向异性+渐变过渡
  • 瞳孔:球状法线+高光+金属材质
  • 头发:次表面+边缘光+matcap
  • 面部:球状掰法线+Toonshader
  • 猫耳:各向异性+粒子毛发

打光:

  • 高饱和明暗交界线:双光源近似
  • 边缘光:背光
  • 其他光源:间接光补光,日光(室内打光)

模型修改:

  • 头发合并,法线修正
  • 上肢胳膊缩细(防止胳膊和胸口贴太紧影响布料解算)
  • 眼白修正(缩裹修改器贴近瞳孔)
  • MD衣服修正:修改腰围,增加领带固定针

踩坑

  • MD黑丝解算:如果要做完全贴合皮肤的黑丝,就不要在MD里解算,直接在blender给腿部皮肤一个新的材质。MD里如果给黑丝全打上固定针,仍然会有不听话的顶点乱飞。
  • MD解算裙子乱飞,手部一碰到裙子就穿模:解算品质太低,改到4,5就能大幅缓解,另外CPU解算精细度更高,很多GPU解算穿模的CPU解算不会穿,应该是和浮点精度有关。
  • abc顶点动画无法修改:删除abc初始顶点,后续动画里顶点数据还在,渲染上顶点也还在。这是因为abc动画是每一帧都记录顶点信息。如果要修改需要把abc导出为mdd文件,使用形态键的方式就可以修改模型顶点数据。
  • 头发UV错误:黑发挑染部分发尖处会有一些白色,发现是这一部分的uv是当时从vrm模型转mmd模型的时候出错误的部分,当时是把溢出的顶点转移到了uvmap的下方,在mmd里是现实正常了,但是到blender里还是错误,于是把这一部分顶点塞到其他黑发位置让uv重叠就解决了(这可能不是正确的解决方法)
  • 眉毛阴影:mmd模型在blender中按材质拆除后,眉毛会作为一个独立物体,会在脸上投射阴影(面部球面化法线前是看不到的)
  • 胸部穿模:在导入MD的衣服abc文件后,对衣服进行平滑后,有些帧胸部会穿过衣服。解决方法是直接让皮肤原本的胸部材质透明。(但是最后出片的时候才发现衣服纽扣被胸部撑开了,透过缝隙会看到衣服下面是空的非常诡异)
  • 勒肉效果:本来想做非对称丝袜的,另一只做一个过膝袜然后加上勒肉效果。勒肉的一个实现方式是用几何节点控制,但是雪糕这个腿部面数很低,导致勒肉效果很差。后面又试了下给腿部顶点细分,但是都对腿部顶点做修改了,不如直接把勒肉效果雕在模型上。给腿部做顶点细分的时候UV出了一些问题,一方面是因为模型本身是三角面,改为四边形会好一些,另一方面是UV映射上的问题,看到一个视屏介绍了一下处理方法,下次尝试。

以后待改进的问题

  • 模型本体面数太低,渲染的时候才发现胸口有很多低面,看着很不舒服。
  • 头发渲染改进,头发现在更类似手办风格,没有太多纹理,下次想要尝试一下手绘头发法线。
  • 面部渲染,这次用了最简单的球面映射优化,下次想试试手绘SDF贴图。
  • 骨骼权重优化,现在骨骼的权重太硬了,手腕还有胳膊这些转角处看着太硬了。
  • 毛发渲染优化,现在看的耳朵毛发像粘在一起一样。
  • 背景优化,因为只开了512的采样,但是开了相机景深又开了NV的降噪,NV的降噪处理背景的模糊部分有些翻车,下次只能在后期加景深了。

制作过程中的逸事

  • k动作的时候,雪糕这个模型头实在是太大,动作本来有一部分是举过头顶摇花手,只能让头往后仰手往前放,手没发直接升到头顶(手臂必穿模)
  • 胸部制作的过程中,最初版比这个弹的多,但是因为太不符合现实就被优化成这样了,本身这个软体模拟还支持了物理碰撞(但是为了防止衣服穿模就没开)

参考

眼白修复 https://www.bilibili.com/video/BV1p44y1N74F
Blender与MD联动 https://www.bilibili.com/video/BV17s4y1X7dE
Q弹猫耳 https://www.bilibili.com/video/BV1Jz421m7Bj
猫耳毛发 https://www.bilibili.com/video/BV1A94y1775v
MMD人物关节修复 https://www.bilibili.com/video/BV1zF41197Cy
RC的一系列教程,每个都很实用,全吃透感觉mmd已经可以半出师了 https://space.bilibili.com/11831050/lists/413193
头发布料模拟 https://www.bilibili.com/video/BV1Kv411h7AM
胸部模拟 https://www.youtube.com/watch?v=9g1nW6yRiyM&list=LL

Q.E.D.


寄蜉蝣于天地,渺沧海之一粟