卡通|Unity引擎带来真实的卡通渲染( 四 )
这是这个典型的 PBR 是在不同的粗糙度与金属度下的表现 。
将 PBR 与卡通表现混合在一起的思路并不复杂 , 简单的来说将之前讲述的特征插入到 PBR 的计算流程中就可以了 。 但是怎么混合两者的特征 , 在什么节点去插入计算 , 这是一个见仁见智的事情 , 对于不同的风格 , 不同的管线流程都会有不同的结论 。
我将对应的卡通特征插入到 PBR 流程中 , 大概长这个样子 , 稍微有点凶残 。 当然了这个 shader 只是为了讲解做的测试 , 项目制作中不会这样用 ShaderGraph 直接做 PBR 。
首先是魔改 NPR 特征后 PBR 整体计算流程并没有改变 , 依旧是直接光与间接光的镜面反射和漫反射叠加 。 下面就简单来讲述一下需要修改的部分 。
首先是蓝色区域中数据初始化阶段的处理 , 最主要的是对法线N进行的操作 , NDotL 和相关的应用计算都可以在这里进行重新映射和合并 , 比如二值化阴影 , 面部阴影、头发投影、影贴图之类的阴影相关的操作 , 然后把它们合入到 NDotL 的结果之中 。 同时 NDotV 的控制也可以改变一部分菲尼尔的效果 。
之后来看黄色区域的 DFG 项 , 这里效果比较明显的更改项就是法线分布函数 D 项 , 比如对 GGX 高光的范围进行重新映射 , 或者更改计算各项异性高光 , 并且加入遮罩偏移之类的操作 , 然后是橙色区域的 diffuse 计算 , 这个地方进行的操作 , 基本上可以当做 emission 自发光来添加 。
对于卡通渲染来说 , 一些色彩混合操作需要在这里加入 , 比如头发、高光 , 如果要使用颜色叠加的方式加入到计算结果中 , 就像柔光、线性光这些操作就需要在这里加入了 , 虽然不那么物理 , 但是可以保证效果 。
之后就是绿色区域的间接光部分了 , 间接光的加入会显著提高模型的质感与立体感 , 但是对于卡通渲染来说 , 立体感的提升并不一定是好事 , 所以最直接的修改方式就是按照不同部分减少间接光的权重 , 比如对皮肤、面部这些需要平面表现的部分去减少间接光的比例 。 其他还有蓝色协议使用了整体向上的法线 , 计算统一颜色的间接光也是一种方式 。
最后就是紫色区域了 , 这里的计算是直接当作自发光来添加的 , 比如说眼睛的高光 , Matcap 反射 , 边缘光之类的 。 经过对 PBR 整体架构的模改 , 我们就可以得到混合了 PBR 的卡通表现 。 这里它长这个样子 , 这是 PBR 魔改后在不同粗糙度和金属度下的表现(下图中右图) 。
和默认的 PBR 的对比 , 因为自定义了阴影颜色和一些自发光的原因 , 它整体会更加明亮一点 , 卡通渲染插入到 PBR 中 , 并不会完全能量守恒 。
不过对于卡通渲染来说 , 很多不守恒的表现是可以接受的 。 所以虽然并不完全能量守恒 , 但是也适合于卡通渲染的表现 。
这样我们就有了混合 PBR 的 NPR 表现 , 之后就要为不同区域去定制对应特征的 Shading Model 了 , 比如头发、眼睛、皮肤这些 。
相关经验推荐
- season|使用虚幻引擎为《Season》打造卡通渲染效果
- 卡通|《开心连球球》:消除游戏不止“开心消消乐”!欧美卡通不止“剑与远征”!
- 香港|香港经典卡通人物“麦兜”系列作品即将拍卖
- 无水印|帅气杰尼龟卡通壁纸 高清壁纸无水印
- 插画|一组少女心十足的好看插画,很适合做卡通动漫头像哦!
- 笔下|《鬼灭之刃》全员变卡通风格,蝴蝶忍清新可爱,无惨还是那么可怕
- 系列|【CF】体验服快车:再添新成员,你值得拥有!卡通系列抢先看
- 卡通|动画片展览道具模型玻璃钢卡通猪猪侠公仔雕塑有温度的美陈场景
- 文文|国漫再现观众举报风波,金鹰卡通菲梦少女遭下架,看到原因我醉了
- 厨神小当家|《厨神小当家》第二季,登陆湖南金鹰卡通电视台,这次是麻婆豆腐
