虚幻4乱改引擎卡通渲染篇【第一卷:卡通渲染启航】

MY BLOG DIRECTORY:

小IVan:专题概述及目录​zhuanlan.zhihu.com图标

INTRODUCTION:

在接触虚幻4开发的过程中,始终有一个声音在耳边萦绕:“少年,你不要改引擎,什么都不要动,要遵循虚幻4的习惯来开发!”但是!作为初生牛犊不怕虎的莽撞少年的我怎么能就此屈服呢!我就是要乱改,直到引擎崩溃。

本篇中我们将一起来探索如何把虚幻4改造成一个次世代卡通的引擎。看到二之国那精美的画面,作为以前是画漫画的我心里羡慕至极。本人只是个技术美术萌新,如有错误还请各路大神斧正!

如果感觉这部分内容会比较生硬,可以先看一下我专栏的Shader篇。以后本篇效果都会以二之国2为标杆


MAIN CONTENT:

下面我们来一起开启卡通效果第一步吧。先上个效果:

v2-ea7258311063867b2e91723fe8fe2cd3_b.jpg

我这里先把影子改成了硬边的。

v2-40ed06362e8fb7fd55b165cb14d05b22_b.jpg

因为我们是复用引擎原生的渲染管线,所以不需要我们手工去处理shadow map什么的了。我前面文章也有比较简单地讲怎么增加一个卡通的材质模型。但是本章讲介绍直接修改原有的standard shading mode

首先我们打开TiledDeferredLightShaders.usf找到光照pass的入口函数

v2-b22b34491d8706c39aefe40d1fefeb85_b.jpg

可以看到这是一个computeshader,看过我前面(shader篇)文章的话对这个应该十分熟悉了。

不管那些复杂的计算,我们找到光照计算部分

v2-64669196f9f1c3cf530d42345871c8df_b.jpg

然后找到GetDynamicLighting部分,这里就是我们的光照计算部分了

打开DeferredLightingCommon.ush我们做如下修改

v2-ba2a82c1dd282cec3aa72f96f6b22464_b.jpg

我们需要了解清楚的是,整个Lighting是怎么回事。这个函数中我们需要注意的有以下几部分:

v2-71e5b0d9e05cce75277bcda49359697a_b.jpg
v2-6f9c051f6e10eb1f4cef78e400860b68_b.jpg
v2-249dd95e0a210d18575930644464a545_b.jpg

首先看到第一部分,这个GetShadowTerms函数会计算出LightMap相关的一些东西,这个函数其实很简单,最关键的LightData是在最开始光照pass入口函数那个computeshader里面传进来的

v2-4f8fe428dd6e58dc9db0e8981818ab9b_b.jpg

接下来第二部分一次是Surfaceshading的计算,第二次是Subsurface的计算(所谓的Subsurface就是计算两次?一次表面一次次表面然后把它们的结果累积起来!)

第三部分就是AO和Shadow的处理了。

下面来到ShadingModes我们把StandardShading做如下修改:

v2-6fbefe22129a57b747e5cb0aa1cb41d4_b.jpg

最后就能看到我们的效果啦。这里只是半成品还有些问题,后面我会对这些计算再做调整,不过我们现在已经迈出了乱改引擎的第一步。


SUMMARY AND OUTLOOK:

如果也有想做卡通渲染的朋友可以加入技术美术讨论群(专栏目录里有群号),大家一起讨论学习进步。后面的章节会一步步完善整个修改,甚至加入一些辅助pass。

v2-326b51d166dc3e98c226edeac0287f7d_b.jpg

Enjoy It 手动笔芯!


NEXT:

YivanLee:虚幻4乱改引擎卡通渲染篇【第二卷:初步描边勾线】

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cpongo11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值