Photoshop里面处理美女相片经常用的一招就是把相片的图层复制一个甚至更多个图层副本,然后对这些副本用高斯模糊。最后再把副本用一定的透明度叠加到原图上就成了网上随处可见的“好皮肤”MM图片。《GPU Gems 3》里面描述了一个高拟真的皮肤算法(话说Gpu Gems 3在我之前的帖子里面有下载地址,而且那本书的封面上的人脸就是由这个算法及时渲染出来的),本质上和通常ps用的技巧是一回事。不过这个算法的模糊、叠加所用的各个参数都是基于物理试验的出来的数据,所以能够很大程度上的逼近真实皮肤的效果。
由于手头找不到合适的模型,所以将就用了一个汽车的模型来展示这个算法:
用普通Phong算法渲染出来的结果乏善可陈,毕竟这个算法是基于经验性的公式。而皮肤算法则是和Phong有很大差别。可以看到皮肤算法渲染出来有比较 明显的柔和的半透材质的效果。另外在纹理接缝的地方出现了不应该出现的黑色细线,这是因为该算法基于纹理空间上的高斯模糊。由于这个汽车模型的纹理坐标不 符合该算法的特殊要求,所以在所有接缝的地方都会出现难看的黑线 如果适当的对模型的纹理坐标进行处理的话可以避免这个问题(详情可以看我之前关于纹理坐标下Post Process的文章)。这个算法如果有高精度的人脸模型和纹理贴图的话能即使渲染出相片级别的效果。
这里有该算法用RenderMonkey实现的project文件下载(下砸连接混杂在一堆广告里面,别点错了):
http://pickup.mofile.com/9910116487493642









近期评论