第14章 非真实感渲染
其实我很早就听说过非真实感渲染这个技术了,在这篇文章中有写过。当时感觉这项技术特别神秘,但是在这段时间学习了渲染方面的知识之后,感觉它的原理还是挺简单的。不过要想达到更好的效果则需要更复杂的算法、花费更多一点的心思。
卡通风格
卡通风格和我们平时渲染出来的3D模型最大的区别在于两点:光照模型不同和描边。
在《Real-Time Rendering 3》一书中,总结了5中描边方法,具体的算法参见书中的介绍:
- 基于观察角度和表面法线的轮廓线渲染
- 过程式几何轮廓线渲染
- 基于图像处理的轮廓线渲染
- 基于轮廓边检测的轮廓线渲染
- 综合方法
在本书的例子中使用了第二种描边方法:
- 先渲染背面的片元,将其渲染成轮廓颜色并沿着法线方向扩张,再正常渲染正面的片元,盖住背面的片元,露出的边缘就可以看做描边;
- 法线的扩张在相机空间下;
- 如果z坐标不同,对边缘的粗细有影响,因此先把z坐标设置成固定的值,这样就相当于一个平面了。
光照模型使用的是渐变纹理的方法,并生成一个有明显边缘的高光。
素描风格
和上面类似,使用不同的纹理表示画中深浅不同的部分,根据漫反射结果对纹理采样。
![](https://img.haomeiwen.com/i5633236/069d0f4ed092090c.png)
![](https://img.haomeiwen.com/i5633236/dc6ff80a85e55731.png)
网友评论