UE4_材质_水体的反射与折射制作_Ben教程

在这个教程中,将制作水的反射和折射,上个教程,我们主要讲了制作水涟漪(水面波纹)和水滴法线混合,水深计算,我们首先要谈的是反射和产生折射的问题。我们将所有从干扰从场景中分离出去,

把基础颜色、不透明度和法线都断开。

而我们断开所有的连接的原因是因为水有很多不同的成分,很难分辨出什么当其它成分都激活的时候,所以我们将隔离这些。保存,外观如下:

一、天空盒

就像你看到的,我的水面有反射,但是你很难说出来,因为它们是模糊的反射,我认为默认粗糙度是0.5,水比它光滑多了,我们设置粗糙度为0,

效果如下:

但你可能会发现,这里面好像缺少什么,可以看到天空中的乌云,

但是看不到墙壁和岩石的反射,为什么我们的反射是这样的?创造虚幻世界真的很复杂,有5种不同的创造方式创造反射,我们今天要看一下,并使用其中的三种方式,虚幻中的大多数场景都使用这些方法中的多种,并且它们都可以协同工作,这就是我们要使用的,我们已经在使用第一种方法创建反射了,这就是天空盒。所以我们的天空会反射在我们场景中,这是最偏移的产生反射的方法。

二、盒体反射捕获

但是我们要反射更近的物体我们就需要用第二种反射方法,即球形反射捕获。

它在世界上的这一点上,它正在捕获一个立方体贴图,然后使用该立方体贴图在场景中创建反射,这种创建反射的方法开销是非常低的,因为立方体贴图可以渲染一次,然后我们就可以查看立方体贴图中的数据。看看我们的反射中是什么?我们可以用这种反射方法应用于水。

我们选中它,您可以看到这是一个盒体反射捕获。可以自己添加上去。

把需要反射的包含进去。木前我是禁用了反射捕获。

勾选visible。效果如下图:

启用了之后,你会发现已经反射了岩石、墙壁。在反射天空之前,因为开启了盒体反射,所以反射了岩石和墙壁。这些反射是开销低的技术,因为反射一次之后可以反复使用。它们有一个缺憾,那就是说从点来说是准确的,当你移动反射盒子的位置时,仔细观察场景,你会发现这个角落的岩石的反射出现了问题。

所以,这是一个问题,这就是为什么有这么多反射方法的原因,虚幻反射的方法很复杂,并且每种反射方法各有千秋。这是开销最低的方法也是最无趣的方法。因为它们只捕捉天空。

三、屏幕空间反射

现在我们将进入第三种方法即屏幕空间反射。为了启用屏幕空间反射,我们需要跳回到着色器,所以我们将在这里进行水波纹演示,选择材质根节点,找到半透明,你可以看到有用于屏幕空间反射的属性,

这将是要采取的图像或屏幕将被渲染,如果像素需要反射,它可以查看并可以从屏幕上的其它任何像素获得反射,所以我要保存下来,让我们看看我们得到了什么?现在你可以看到有惊人的外观反射。

特别是这块岩石就是完美的代表。

无论我在岩石的什么位置,看起来恰到好处,这真的很好,它正在做的是我需要一个反射在我的水上,所以它看着屏幕说好,被反射的物体就在那里,所以我将其映射为反射,非常完美。但屏幕空间反射缺点是它们只能使用屏幕上的数据,当你向下移动视角时,会发现屏幕上没有的云彩消失了。

当角度到达这里时,你会发现连石头的反射都消失了:

而是当我向上移动时又出现了:

墙壁的反射也是这样:

它必须融合,因为它试图反映屏幕外的对象,而且它不能做到,我现在只能反映屏幕上的像素,有趣的是,当我向下滚动相机时,您可以看到

屏幕空间的反射消失了,但我仍然有天空反射和立方体贴图,所以三种反射方法实际上一起工作,这就是该软件真正酷的地方,它同时使用了这三种方法。

四、水的反射

观察效果:

调整涟漪的强度:

不适用天气函数,取消雨滴,观察效果:

可以看到涟漪更柔和。

五、水的折射

通过下面的岩石的水

岩石是完美的,看起来有点不对劲,那是不合适的。因为折射消失了,什么是折射?当光线从空气中进入水中,因为空气和水的密度是不同的,光线会稍微弯曲,这会导致水下面会看到变形,我想将其添加到我们水效果,让水看起来更加逼真,这很容易做到,因为我们想要的大多数扭曲效果是在根节点内部创建的,我们真正需要做的就是告诉它多少折射指数,各个网站都可以查到数值。水的折射率是1.33.

我想做的另一件事是我们将隔离一些事物,就像屏幕反射那样,我们先把基础颜色、粗糙度、不透明断开连接,现在我将不透明度设为0,我要做的就是要告诉你看起来没有屋顶让折射过来,折射的样子。

不透明度为0,意味着100%的透明,我们没有折射,因为水没有了。

当我们连接上折射之后,

现在表面上的法线使岩石变形,因为我们正在计算折射,所以在水下真的很整洁,它将为我们水面增加很多,尽管您可能会注意到,随着我旋转相机周围有一些小小的视觉故障。

折射墙壁下面的东西,然后当我旋转相机向下时,

您可以看到这里有条线,我的水完全消失,这些视觉故障是因为我们当前拥有根节点设置为折射模式,该模式不适用于这种类型的水,在其它事情上效果很好,但是当您拥有大型水上飞机时不理想。让我们切换回着色器,选择根节点。

我们将来到折射部分,

您可以看到我的折射模式当前设置为折射率index of refraction,在此描述中,您可以看到说明最后,它说它不适用于大折射面像水一样,我们将其更改为像素法线偏移,

这是可以更好的与水配合使用的折射技术,

,save,查看,会发现小瑕疵没有了。

回到着色器,连接上基础颜色,颜色是基于深度的,在浅蓝色和深蓝色之间过渡,连接上不透明度,粗糙度值为0,将所有效果都连上。

nice!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/39920.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个动画形式的分形树

要在Python中使用matplotlib来创建并展示一个动画形式的分形树(例如,基于递归的L系统生成的树),我们需要结合使用matplotlib的动画功能以及递归函数来生成树的形状。下面是一个简单的示例,展示如何使用matplotlib和Fun…

Ubuntu + SSH密钥连接服务器

1. 下载VSCode 下载链接 cd到下载文件夹后,使用命令安装,把xxx复制为文件名 sudo dpkg -i xxx.deb2. 为VSCode换皮肤 3. 下载SSH插件 4. 配置SSH 把密钥key文件放在/home/your_user_name/.ssh/里面,然后在/home/your_user_name/.ssh/confi…

【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【18】认证服务02—微博社交登录

持续学习&持续更新中… 守破离 【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【18】认证服务02—微博社交登录 微博社交登录图示原理前置准备实现流程完整代码 参考 微博社交登录 OAuth: OAuth(开放授权)是一个开放标准&#xff0…

Spring Boot2.x教程:(四)Spring Boot2.6及之后版本整合Knife4j的问题

Spring Boot2.6及之后版本整合Knife4j的问题 1、概述2、问题出现原因及解决办法3、拓展3.1、为什么发生这种变化 4、总结 大家好,我是欧阳方超,可以扫描下方二维码关注我的公众号“欧阳方超”,后续内容将在公众号首发。 1、概述 今天在2.7…

互联网盲盒小程序的市场发展前景如何?

近几年来,盲盒成为了大众热衷的消费市场。盲盒是一个具有随机性和惊喜感,它能够激发消费者的好奇心,在拆盲盒的过程中给消费者带来巨大的愉悦感,在各种的吸引力下,消费者也愿意为各类盲盒买单。如今,随着盲…

VSCode里python代码不扩展/级联了的解决办法

如图 解决办法:重新下载新的扩展工具 步骤如下 1、在左边工具栏打开Extensions 2、搜索框输入python,选择别的扩展工具,点击Install - 3在扩展工具所在的目录下,新建一个文件,就可以用了

iis部署前后端分离项目(React前端,Node.js后端)

iis虽然已经有点过时,但不少用户还在用,故总结一下。 1. 安装iis 如果电脑没有自带iis管理器,打开控制面板->程序->启用或关闭Windows功能,勾选iis安装即可 2. 部署前端项目 打开iis,添加网站,物理…

Docker加速器配置指南:提升镜像下载速度的秘诀 加速安装Mysql Redis ES

在安装 Docker 镜像时,由于官方镜像下载速度较慢,我们可以使用阿里云的镜像加速器来提升下载速度。 使用阿里云镜像加速器 首先,找到并配置阿里云的镜像加速器。安装教程如下: 登录阿里云,进入容器镜像服务。直达链…

05 docker 镜像

目录 1. 镜像 2. 联合文件系统 3. docker镜像加载原理 4. 镜像分层 镜像分层的优势 5. 容器层 1. 镜像 镜像是一种轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好行程一个可交付的运行环境&#xf…

AMEYA360代理:海凌科60G客流量统计雷达模块 4T4R出入口绊数计数

数字化时代,不管是大型商城还是各种连锁店,客流统计分析都可以帮助企业更加精准地了解顾客需求和消费行为。 海凌科推出一款专用于客流量统计的60G雷达模块,4T4R,可以实时进行固定范围内的人体运动轨迹检测,根据人体的…

聊一聊领域驱动和贫血

写在前面 前段时间跟领导讨论技术债概念时不可避免地提到了代码的质量,而影响代码质量的因素向来都不是单一的,诸如项目因素、管理因素、技术选型、人员素质等等,因为是技术债务,自然就从技术角度来分析,单纯从技术角…

亚马逊跟卖僵尸选品采集,批量多站点,多关键词同时采集获取!

今天给卖家分享下亚马逊跟卖选择僵尸链接,现在很多卖家,找僵尸链接是不是都是通过亚马逊前端页面找或者是通过搜索,这样不但费时费力,还找不出几个僵尸链接,而且就算是找到了,也需要各种检查,非…

Electron、Win11静默打印与PowerShell:技术融合与应用探索

Electron、Win11静默打印与PowerShell:技术融合与应用探索 在现代软件开发与办公环境中,技术的融合与创新不断推动着工作效率的提升和用户体验的优化。本文将深入探讨Electron框架、Windows 11(Win11)静默打印技术以及PowerShell…

java版本工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统

工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的…

【操作系统期末速成】 EP03 | 学习笔记(基于五道口一只鸭)

文章目录 一、前言🚀🚀🚀二、正文:☀️☀️☀️2.1 考点五:进程的概念及特征2.1 考点六:进程的状态与切换 一、前言🚀🚀🚀 ☀️ 回报不在行动之后,回报在行动…

GCN结合Transformer炸场!性能暴涨74%,效率翻3倍

最近发现了两篇效果很妙的GCN结合Transformer的最新工作,分享给大家: MP-GT:通过结合GCN和Transformer方法来增强App使用预测的准确性,实现了74.02%的性能提升,且训练时间减少了79.47%。 MotionAGFormer:结…

MySQL 图形化界面

填完信息之后,圆圈处可以验证是否可以连接数据库 展示所有数据库(因为有的可能连上,却没有数据库显示)

“小红书、B站崩了”,背后的阿里云怎么了?

导语:阿里云不能承受之重 文 | 魏强 7月2日,“小红书崩了”、“B站崩了”等话题登上了热搜。 据第一财经、财联社等报道,7月2日,用户在B站App无法使用浏览历史关注等内容,消息界面、更新界面、客服界面均不可用&…

【python】PyQt5事件机制、定时器原理分析和实战演练

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

Qt时间日期处理与定时器使用总结

一、日期时间数据 1.QTime 用于存储和操作时间数据的类,其中包括小时(h)、分钟(m)、秒(s)、毫秒(ms)。函数定义如下: //注:秒(s)和毫秒(ms)有默认值0 QTime::QTime(int h, int m, int s 0, int ms 0) 若无须初始化时间数据,可…