UE4 材质学习笔记12(水体反射和折射)

一.水体反射和折射

首先就是要断开所有连接到根节点的线,因为水有很多不同的节点成分,当所有其他节点都在用时 要分辨出其中一个是何效果是很难的。

虚幻有五种不同的方法可以创建反射,虚幻中的大多数场景使用多种这些方法 它们会同时运作。

我们已经使用了第一种方法来创建反射,即天空盒(Skybox),所以天空盒被反射到我们的场景中,这是做反射的最省性能的方法,

但如果我们想要反射局部的物体、更近的物体,我们需要使用第二种反射方法:光照探针(Light Probes),这种创建反射的方法非常节省性能,因为立方体贴图可以被渲染一次,然后可以反复使用,但是这有一个缺点,那就是它们只能从捕获立方体贴图的那一个点开始是准确的,但是我们移动以后反射就出现在了错误的位置。

接下来我们要使用屏幕空间反射,在材质的细节面板,在"半透明"下 你可以看到有个属性是用于屏幕空间反射的,其作用是它会取用屏幕或者正在渲染的图像,而且如果一个像素需要反射,它会查看那个反射是否在屏幕上的任何其他像素上可用,但是屏幕空间反射的缺点是它们只能使用在屏幕上的数据.

然后设置折射效果,当光从空气进入水中,由于空气和水的密度不同 光线会有一点弯曲,这就会导致水面下的东西看起来扭曲了,水的折射率是1.333,但是直接设置折射效果的话旋转视角会发现水会突然消失了。因为我们目前将根节点设置为折射模式,这对水面来说不合适,所以我们要将折射模式改成Pixel Normal Offset

但是设置了折射以后,在水与岩石的交界处会有很硬的边缘,我要做的是在水和其他物体相连的边缘处降低折射效果

需要设置交界处没有折射。

完整节点:

最终效果:

相关推荐
Chunyyyen1 小时前
【第四十二周】论文阅读
论文阅读·学习
lwf0061648 小时前
导数学习日记
学习·算法·机器学习
qeen878 小时前
【编程日记】现阶段总结
学习
-Marks-11 小时前
【C++编程】STL简介 --- (是什么 | 版本发展历程 | 六大组件 | 重要性缺陷以及如何学习)
开发语言·c++·学习·stl·stl版本
Joseph Cooper12 小时前
STM32MP157 Linux驱动学习笔记(四):典型总线与设备模型(SPI/USB)
linux·stm32·学习
2401_8274999913 小时前
数据分析学习05(黑马)-Pandas
学习·数据分析·pandas
jiayong2314 小时前
第 38 课:任务列表里高亮当前正在查看详情的任务
开发语言·前端·javascript·vue.js·学习
lwf00616414 小时前
逻辑回归学习笔记-数学直接解回归方程
笔记·学习·逻辑回归
weixin_qq_1639513616 小时前
hypermill五轴后处理制作需要学习哪些知识点
学习·ug
wsjsf16 小时前
智能代码审查助手的搭建
java·学习·ai编程