NPR——卡通渲染(三)

NPR——卡通渲染

这是我“NPR——卡通渲染”系列的第三篇文章,以此结束卡通渲染第一个阶段的研究学习。在本系列文章第一篇“NPR——卡通渲染(一)”文中,讲美式卡通[2]时,提到过 Valve 公司制作《军团要塞2》一篇著名的卡通渲染论文[1],本文正是对该论文学习的总结。
(本文着重于论文的分析学习,在 Unity 实现了相应的效果,本文不再贴出代码,有需要可参考其他文章如[4]。)

1.1 Illustrative Rendering in Team Fortress 2 [1]

本文不会翻译完整的译文(较完整的中文译文可参见[3]),以我的理解,《Illustrative Rendering in Team Fortress 2》[1]这篇论文大体分为四段讲述了《军团要塞2》的制作过程,首先是《军团要塞2》这款游戏的风格定位,论文第一节提到《军团要塞2》的艺术风格灵感来自于20世纪中时期的几位商业插画家——J. C. Leyendecker、Dean Cornwell 和 Norman Rockwell [Schau 1974],插画人物衣物褶皱轮廓鲜明,并且以加强轮廓和边缘高光而不是暗色描边的着色技巧凸出物体或者人物的内部细节;其次论文介绍了《军团要塞2》的技术基础,比如“Gooch Shading”——一种插画着色技巧,使用冷暖色调的变化表示表面方向(法线方向)和光源的关系(几何上关系就是二者的夹角)改变传统的 Phong Light Model,相比传统的光照模型,在复杂的光照环境下,会得到更好的 3D 视觉表现。 [Decaudin 1996] [Lakeet al. 2000] [Barla et al. 2006],Decaudin 使用 constant diffuse color 并依赖于 Shadow mapping 渲染物体达到卡通风格表现,Lakeet 使用的方法不依赖于 Shadow mapping,他使用一张一维贴图(基于Lambertian 采样纹理)模拟卡通绘画的调色板(降低色阶),Barla 更进一步扩展了 Lakeet 的方法,他使用一张二维贴图调和 view-dependent(视线相关)和 level-of-detail effects,同时,Barla 还应用了 Fresnel-Like(菲涅尔效应)模拟“virtual backlight“,也就是边缘光照(rim-lighting);第三,论文讲述了《军团要塞2》的制作流程,从”场景“、”人物“,再到”贴图绘制“等;最后,论文将角色的绘制(着色)分为了两部分,一是视觉无关(好理解一点的说法是”与视线无关“),包括”半兰伯特光照“、”漫反射变形函数“以及”平行环境光“。二是视觉相关,包括”多重 Phong 光照“和”风格化的边缘光照“。

1.1.1 《军团要塞2》插画风格抽象描述

论文的第三节(Third Section)总结了五点插画风格要素,以此作为《军团要塞2》着色技术的基础(我认为这一节的总结对于图形程序员来说才是最重要的,只有将插画的风格要素提取出来,具象为程序员可以量化的值,我们才可以很好的实现插画风格。总言之,这种思考问题的方法是我应该学习且具备的):

  • 着色从暖到冷变化,阴影向冷色变化,而非黑色。
  • 在光源的明暗分界处增加颜色饱和度,分界颜色往往偏红色。
  • 高频细节尽可能忽略它。
  • 对于角色而言,其内部细节如衣物褶皱通过重复轮廓线来强调它。
  • 使用边缘高光而不是暗色描边来强调轮廓线。
1.1.2 视觉无关的光照

视觉无关的光照算法用公式(1)概括:

kd[a(nˆ)+i=1Lciw((α(nˆliˆ)+β)γ)](1) (1) k d [ a ( n ^ ) + ∑ i = 1 L c i w ( ( α ( n ^ ⋅ l i ^ ) +
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值