毛发模拟主要原理是分层绘制毛皮表面
每一层都是模型顶点沿着法线的方向向外扩展,就可以不修改模型模仿毛发长度,层数越多,效果越接近真实
转自 https://mp.weixin.qq.com/s/aIWMEO5Qa2gNn2yCmnHbOg
使用一张燥点贴图做 mask ,对当前层做透明度的剪裁
一个基础版的毛发就实现了
基础版
调节层间距相当于增加毛发的长度
有点像刺猬,因为从头到根部都是一样粗细,根据毛发的长度增加裁剪的范围,就形成了毛发的粗细变化
毛发粗细
在每次沿法线扩充的时候加上偏移,毛发有了弯曲和下垂的效果
垂落
按照文章的方法加上光照
没有光照的毛发只有20分
加上环境光 / 环境光遮蔽
环境光遮蔽
加上漫反射 / 高光 / 边缘光
加上光照
最后加上皮毛贴图,调整下长度 / 密度 等参数
完整效果
参考文章
https://mp.weixin.qq.com/s/aIWMEO5Qa2gNn2yCmnHbOg
http://sorumi.xyz/posts/unity-fur-shader/