UE4行星Shader

贴图准备

https://www.solarsystemscope.com/text…

基础地球制作

颜色设置

星球采用自发光颜色,云贴图和地球贴图相加,其中转动的时候云要比地球快。
在这里插入图片描述

光源设置

新建材质参数集,添加一个向量,作为太阳光的方向
在这里插入图片描述
新建一个Actor,为材质参数sundirection获取点光源位置
在这里插入图片描述
添加光源的遮罩,实现昼夜效果。mask(rgb)从材质参数sundirection(rgba)中获取出三维的位置,光源位置坐标 减去 绝对世界位置(被赋予材质的地球的位置)也就是此时光源上的光照到地球上的光的方向。该方向和模型的法向点积可以算出这个遮罩输入到lerp,将范围钳制在0到1是因为超过1的时候会随着数值加强。此时黑夜暂时用 0 表示。
在这里插入图片描述
添加遮罩过渡的控制
在这里插入图片描述

大气层

只有白天的大气能被看见,所以要在lerp前和earth的颜色贴图相乘(正片叠底)
最后加1,是去除菲涅尔遮罩带来的0
在这里插入图片描述

Normal

earth的法线贴图和云的法线贴图相加

云密度和云投影

云密度:利用自发光里,数值越高光越强,有向周围扩散的效果,来实现云层覆盖面积增大的效果。
与earth颜色贴图相加前完成以下
在这里插入图片描述
云投影:
凹凸贴图偏移(Bump Offset)贴图通过以创新的方式修改 UV 坐标来帮助强化纹素与对象表面的错位,从而营造出表面细节超出实际情况的错觉。 在本操作方式示例中,我们不仅阐述如何找到凹凸贴图偏移材质表达式,还将说明如何在材质中利用"凹凸贴图偏移"(Bump Offset)节点。

凹凸贴图偏移(BumpOffset) 是虚幻引擎4术语,就是通常所谓的"视差贴图"。BumpOffset表达式可以使材质产生深度错觉,而不需要额外的几何体。BumpOffset材质使用灰阶_高度贴图_来提供深度信息。高度贴图中的值越亮,材质的"凸出"效果越明显;当摄像机在表面上移动时,这些区域将产生视差(移位)。高度贴图中较暗的区域将显得"距离较远",其移位程度最小。

利用凹凸贴图偏移对云贴图采样偏移,结果作为遮罩得到云投影。
在这里插入图片描述

地球反光

地球也会反射太阳的光,用到高光贴图。云作为遮罩,没被云遮挡的的earth用earth的高光贴图,为了更好的效果,用钳制函数固定最小值。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值