UE5制作科幻感空气墙效果

server/2024/12/20 14:14:47/

在游戏开发中经常需要制作空气墙,以防止玩家走入非预定的场景区域,下面就来讲讲一种科幻感空气墙的做法:
在这里插入图片描述

1.准备材质函数

在制作开始之前,需要先创建2个材质函数,ObjectScale材质函数可以获取当前对象的缩放信息:
在这里插入图片描述
ObjectLocalBounds材质函数可以获得当前对象的Bounds信息:
在这里插入图片描述

2.制作边缘效果

首先需要制作护盾的边界高亮区域,可以取+X轴Mask、-X轴Mask、+Y轴Mask等四个区域进行混合,而护盾核心区域则通过Tile平铺贴图和叠加噪声实现。
在这里插入图片描述

首先将护盾的世界空间位置变换为本地空间位置,这样不会受到模型旋转影响,然后会通过刚刚的Bounds信息进行相对数值的获取。

世界空间位置变换为本地空间位置:
在这里插入图片描述
执行Comment内的节点后,可以得到经过Bounds信息处理的相对值:
在这里插入图片描述
将数值变为负数,在+X和-X轴上都执行一次,并通过Max节点混合:
在这里插入图片描述
继续扩展Y轴也进行Max节点混合操作,但结果会发现四个角落有棱边:
在这里插入图片描述
这不是想要的效果,仔细检查发现通过Add节点来代替Max节点,可以解决这个问题:
在这里插入图片描述

3.制作内部平铺图案

内部平铺图案要简单很多,只需要叠加噪声位移即可。

首先使用点状图案素材,进行UV缩放处理,达到平铺效果。
在这里插入图片描述
对点状平铺图案素材叠加噪声,使用Panner节点实现噪声位移动画
在这里插入图片描述

最后叠加边缘(MaskEdge)和内部平铺(TilePoints)图案,实现科幻墙壁效果。
在这里插入图片描述


http://www.ppmy.cn/server/151718.html

相关文章

spring事件机制笔记、发布和监听

文章目录 为什么要用事件 使用案例可以实现一对多吗? spring事件机制笔记、发布和监听 为什么要用事件 使用案例 可以实现一对多吗?

HTTP 协议报文结构 | 返回状态码详解

注:本文为 “HTTP 历史 | 协议报文结构 | 返回状态码” 相关文章合辑。 未整理去重。 HTTP 历史 wangjunliang 最后更新: 2024/3/16 上午10:29 超文本传输协议(英语:HyperTextTransferProtocol,缩写:HTTP)是 万维网(World Wide Web)的基础协议。自 蒂姆…

C++如何处理对象的生命周期管理?

概念 在 C 中,对象的生命周期管理是一个重要的概念,涉及对象的创建、使用和销毁的过程。有效的生命周期管理可以帮助防止内存泄漏、悬挂指针等常见问题。 对象创建与销毁 C 中对象的创建和销毁可以通过几种方法进行: 栈对象:在…

洛谷 B3836 [GESP202303 二级] 百鸡问题

题目&#xff1a; https://www.luogu.com.cn/problem/B3836 思路&#xff1a;从0枚举每一只鸡的数量&#xff0c;满足条件即可 代码如下&#xff1a; #include<iostream> using namespace std; int main() {int x,y,z,n,m;cin >> x >> y >> z >…

【深入理解Nginx】

深入理解Nginx 介绍 Nginx&#xff08;发音为 “engine-x”&#xff09;是一款高性能的HTTP服务器和反向代理服务器&#xff0c;同时支持IMAP/POP3协议。它以其高并发处理能力、稳定性、丰富的功能集、简单的配置和低资源消耗而受到广泛欢迎。Nginx特别适合提供静态文件服务、…

HCIA-Access V2.5_3_3_2_VLAN路由配置与实现

单臂路由的配置 交换机通过0/1端口连接VLAN100的用户&#xff0c;通过0/2端口连接VLAN200的用户&#xff0c;然后通过0/24连接上层的路由器&#xff0c;整个配置分为两个模块&#xff0c;一个是交换机的配置&#xff0c;另外一个是路由器的配置&#xff0c;对于交换机的配置&am…

聊聊开源的虚拟化平台--PVE

原文链接&#xff1a;聊聊开源的虚拟化平台–PVE PVE&#xff08;Proxmox Virtual Environment&#xff09;是一种开源的虚拟化平台&#xff0c;支持容器化&#xff08;LXC&#xff09;和虚拟机&#xff08;KVM&#xff09;&#xff0c;可用于创建和管理虚拟化环境。它基于Debi…

docker容器的安装以及用法

1、了解docker 1.1、docker是什么 Docker 是一个开源的应用容器引擎&#xff0c;基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现…