【游戏开发实战】Unity Unlit ShaderGraph实现与PBR的自发光贴图类似的叠加效果

17 篇文章 79 订阅

一、前言

之前写过一篇文章:
《ShaderGraph使用教程与各种特效案例:Unity2020》
地址:https://blog.csdn.net/linxinfa/article/details/108049048#comments_14481683

有同学留言提出一个问题:
在这里插入图片描述
这篇文章就来解答一下。

二、最终效果

做出来的效果如下:
在这里插入图片描述
Demo工程已上传到GitHub,地址:https://github.com/linxinfa/UnityShaderGraphUnlitEmission
在这里插入图片描述

三、PBR ShaderGraph中的自发光

我们先看下PBR ShaderGraphLit ShaderGraph)下的自发光效果。
没有自发光效果是这样的:
在这里插入图片描述
使用自发光贴图,输入到Emmision,有了自发光效果:
在这里插入图片描述
我们可以对自发光贴图做个乘法,方便调整自发光强度:在这里插入图片描述

四、Unlit ShaderGraph中的自发光

我们来看看Unlit ShaderGraph是怎样的。
Unlit ShaderGraph,没有Emission的输入,所以我们不能很方便得添加自发光效果。
在这里插入图片描述

1、简单的加操作实现自发光

如果将自发光贴图与Base Color做一个简单的加法,效果如下:
在这里插入图片描述
加上一个自发光强度控制,效果如下:
在这里插入图片描述

2、优化版

根据需求,是想要在基础色上层显示自发光颜色,而不是简单的加操作。也就是说,自发光的部位,不能有基础色。
按照这个思路,我们先对发光贴图做一个处理,即得到发光贴图的黑白反色图。
在这里插入图片描述
使用这张黑白反色图,与基础色进行相乘,即可将基础色中发光的部位的颜色滤掉。
在这里插入图片描述
然后再与发光贴图做一个加法操作,这样,发光的部位就是自发光贴图的纯颜色了。
在这里插入图片描述
加上自发光强度控制,当自发光越来越弱的时候,要渐渐显示回基础色。
最终节点如下:
在这里插入图片描述

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

林新发

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

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

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

打赏作者

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

抵扣说明:

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

余额充值