虚幻4渲染编程(材质编辑器篇)【第二卷:自定义光照模型】

本文介绍了如何在虚幻4中定制渲染管线,特别是自定义光照模型。通过修改EngineTypes.h、Material.cpp、MaterialShared.cpp等文件,以及Shader的相关文件,实现了在材质编辑器中添加新的ShadingModel枚举类型,从而能够控制CustomData的pin接口,并在Shader中添加相应处理逻辑。教程详细讲解了每一步的操作,包括修改C++代码、设置Shader宏和修改不同Shader文件的过程。
摘要由CSDN通过智能技术生成

My blog directory:

小IVan:专题概述及目录

Introduction:

v2-0c2c33bd32b708dcd5eebd59edcab13d_b.jpg

读过我前面一些博客的朋友对虚幻4的渲染流程有了一些大致的了解之后,那么我们现在可以开始着手开始修改虚幻4引擎了·。我们有些时候需要实现某些效果,就需要动手自己改引擎了。这是customnode或者是纯material无法做到的。有些人可能就要反驳了,“我纯用材质编辑器也能实现卡通材质啊”。但是无法忽略的一点是:在材质编辑器里制作的卡通材质无法接受光影。这时候有些人就想出了骚操作,用蓝图自己实现一个光源,渲染一张depthmap的RT然后传到material里去。这种方法其实过于麻烦,这相当于你抛弃掉了虚幻4的光照系统。这是得不偿失的。

阅读下面的内容你需要具备一下知识:

(1)C++

(2)对虚幻引擎及其渲染模块有一定了解,如果不了解可以先读读我之前的一些文章。

(3)HLSL


main content:

那么下面就以这个卡通材质为例,让我们一步步来定制自己的渲染管线,来看一下虚幻的GBuffer的数据有哪些吧:

v2-f2df11cbc694e6fe469ef7f348f13735_b.jpg

首先你得下载好一个源码版引擎,我使用的是4.19版引擎。也许在未来引擎会做更新,单应该变化不大。然后打开如下的文件:

v2-69e1c367f96b3d8a003a5f70a66f0208_b.jpg

首先找到EngineTypes.h,找到EMaterialSamplerType这个枚举。这个枚举将会控制材质编辑器里的那个下展栏。然后我们加入我们的枚举成员MSM_MyShadingModel UMETA(DisplayName="MyShadingModel")编译引擎后你将会看到如下的样子:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值