UE5 基础知识

UE5——基础(一) 有关变量的创建,介绍,用法。有关蓝图类的创建,用法。 阅读详情
AI摘要

本文系统讲解UE5蓝图开发的核心基础,涵盖3D渲染管线(虚拟几何体、光线追踪)、事件机制(BeginPlay/Tick/碰撞)、变量类型(Bool/Int/Float/Vector/Rotator/Transform)、常用运算符及逻辑控制。重点剖析蓝图性能瓶颈:每帧更新、循环遍历、Cast To引用开销、全局搜索代价,并提出针对性优化策略——事件委托替代轮询、对象池化、数据表+结构体管理、引用传递、缓存计算结果、分层蓝图架构及C++桥接等,全面提升运行效率与工程可维护性。

1、3D显示原理

逻辑-几何体-光栅化处理-像素渲染。

传统游戏靠LOD来降低机能消耗,而UE5内置了类似的虚拟几何体功能,自动降低负载。

即时光线追踪,效果更真实,降低美术工时,但机能压力大。

而传统方式是预先烘焙贴图,造成高工时低效率,优点是机能消耗小。

2、事件

事件-函数-动作-变量。

Actor 是可以添加到关卡的游戏对象,通过使用动作来响应事件。

  • 碰撞事件:当两个 Actor 发生碰撞或重叠时执行。

  • 输入事件:这些事件由输入设备触发,例如键盘、鼠标、触摸屏和游戏手柄。

  • 事件开始运行(Event BeginPlay):在游戏开始时执行,对于已经存在于关卡编辑器上的 Actor,或者如果在运行时发生,则在生成 Actor 之后立即执行。

  • Event End Play:在运行时将要移除 Actor 时执行。

  • Event Tick:这被称为游戏的每一帧。例如:如果游戏以每秒 60 帧的速度运行,则该事件将在一秒钟内被调用 60 次。

在创建蓝图脚本时,有时,一组动作会在蓝图中的多个地方使用。这些动作可以转化为宏或函数

函数的优点之一是,在一个蓝图中创建的函数可以从另一个蓝图中调用。

3、变量类型

  • 布尔值(Boolean):只能保存真或假。

  • 字节(Byte):这是一个 8 位数字。它可以存储 0 到 255 之间的整数值。

  • 整数(Integer):这是一个 32 位数字。它可以存储介于 -2,147,483,648 和 2,147,483,647 之间的整数值。

  • Integer64:这是一个 64 位数字。它可以存储介于 -9,223,372,036,854,775,808 和 9,223,372,036,854,775,807 之间的整数值。

  • 浮点(Float):这是一个 32 位浮点数。它可以存储带小数部分的数值,精度为七位小数。

  • Double:这是一个 64 位浮点数。它可以存储带小数部分的数值,精度为 16 位小数。

  • 命名(Name):用作对象标识符的一段文本。

  • 字符串(String):可以存储一组字母数字字符。

  • 文本(Text):此类型用于将被本地化的文本,这意味着它可以更轻松地实现不同语言的翻译。

  • 向量(Vector):包含代表 3D 向量的 X、Y 和 Z 浮点值。

  • 旋转体(Rotator):包含 X(滚动)、Y(俯仰)和 Z(偏航)浮点值,它们表示 3D 空间中的旋转。

  • 转变(Transform):可以存储位置、旋转和缩放。

4、常用运算符

add, subtract, multiply divide   加减乘除,算术运算
Greater than,less than,equal 大于小于等于,以及衍生出<= >= !=,关系运算
++ -- 自增加1,自减少1

逻辑运算

  • OR:如果任何输入值为真,则返回真值。

  • AND:当且仅当所有输入值都为 True 时,才返回 True 值。

  • NOT:只接收一个输入值,结果将是相反的值。

  • NOR:这是 NOT 和 OR 运算符的组合。如果两个输入都为 False,则返回 True,否则返回 False。

  • NAND:这是 NOT 和 AND 运算符的组合。如果两个输入都为 True,则返回 False 值,否则返回 True。

  • XOR:此运算符称为异或。如果两个输入不同(一个为 True,另一个为 False),则返回 True 值。如果两个输入相同,则返回值为 False。

5、技巧

BeginPlay、Tick、BeginOverlap、Hit   (when-if-do)

cast to、Branch、

sequence,多列依次执行。有助于条理清晰。

Flipflop,两个结果交替执行。

normalize  向量归一化

DeltaSeconds

timer、timeline

set material、FieldOfView、SpawnEmitter、DestroyActor

IA_Zoom

widget、CanvasPanel 

-------------------

Execute Console Command

DisableAllScreenMessages(禁用所有屏幕信息),如红色警告文字

EnableAllScreenMessages(启用所有屏幕消息)

在这里插入图片描述

编辑器设置

11、UE4官方蓝图优化总结

FestEurope 2019 蓝图深入探讨|Blueprint In-depth 官方视频

UE4官方蓝图优化总结

总览

----------------------------------------------------------

蓝图主要消耗

    蓝图的消耗主要是在节点之间,蓝图连线触发的消耗是一致的,但节点运行的消耗是通过C++ ,节点不同就有所不同. (意思应该是简化节点连接的数量可以降低蓝图消耗)

----------------------------------------------------------

循环节点

    与循环逻辑有关的节点,性能开销都很大. 因为在循环节点中,会有很多连线. 根据实际需要来使用.

 ----------------------------------------------------------

遍历节点

    遍历Actor的节点同样性能开销很大 , 建议使用时把遍历结果保存下来.

 ----------------------------------------------------------

每帧更新节点

    大量使用每帧更新节点,同样开销很大.  后面会有一些方法来优化他.

 ----------------------------------------------------------

循环上限

    蓝图是单线程执行, 循环次数上限是100万 , 所有蓝图每帧指令执行次数上限是25万.

 ----------------------------------------------------------

复杂的蓝图Actor

    蓝图本身作为预制体不会产生性能开销. 只有预制体特别复杂的时候才会. 总的来说影响不大.

 ----------------------------------------------------------

开销对比

    蓝图开销对比.  编辑器模式(红色)运行下效率不高. 但打包(蓝色)和开发模式(黄色)要低很多, 比C++高10倍左右.

 ----------------------------------------------------------

每帧运行节点

每帧运行节点

    这些类似的节点都是每帧来更新的 , 包括输入,时间轴,更新动画,UMG的绑定.

优化建议:

1. 避免过多使用每帧更新, 最直接有效

2. 当使用每帧更新时,尽量思考是否必要. 80%-90%的情况是用不到的

3. 

关闭tick位置

        可以禁用蓝图每帧更新,如果不需要.

4. 

定时器更新

        定时器可以处理几乎所有的节点更新

优化定时器更新

    如果场景里有很多实例,不希望在同一时间内循环,导致开销骤增,可以使用随机时间来分摊开销.

5. 

UMG绑定更新VS事件更新

     尽可能使用基于事件的更新, 上图中UMG绑定会每帧更新.

 6. 

禁用蓝图每帧更新

     可以禁用蓝图每帧更新,或者修改更新间隔.  如果没有每帧更新的事件,禁不禁用没有区别.

7. 

根据距离开启每帧更新

     可以通过设置一些条件来启用每帧更新. 方法很简单,但效果明显.

根据距离越远更新频率越低

    同上 可以通过设置一些条件来修改更新频率.  

根据是否渲染设置更新频率或者关闭

    有个节点Was Recently Rendered,能提供最近是否渲染.如果是false可以考虑关掉或者降低更新频率.

8. 视觉效果不一定要像逻辑处理一样每帧更新.

       根据情况在适当的时候拆分逻辑

使用定时器更新碰撞体积和设置actor位置的计算

    每帧更新部分,逻辑没有变,但降低了开销.

9. 

图中物体在旋转

    简单的动画可以使用材质来实现,不必用蓝图来写. 用材质是使用GPU, 蓝图会消耗CPU. 并且比蓝图更快. 

true是使用蓝图传参数来改变材质参数实现变色, false直接使用材质来改变颜色

     任何简单动画和淡入淡出效果或其他效果.都可以使用材质来处理.材质总是比蓝图快.

-------------------------------------------------------------

性能分析和调试

1.  

蓝图调试

Blueprint Debugger

    Window---&gt;Developer Tools---&gt;Blueprint Debugger 方便查看所有监测值

2. 可视化日志

可视化日志

    场景中可视化查看变量变化位置和记录轨迹,需要创建或者在现有蓝图里添加

开启可视化日志

    设置复杂  下面是设置在Tick事件的Heath后面,记录Heath变化和场景中发生变化的位置

      然后打开Window---&gt;Developer Tools---&gt;Visual Logger窗口

3. 分析工具

    统计数据窗口

UE5 蓝图入门 入门捏 阅读详情

相关推荐

UE5 cesium for unreal快速入门

要移动视口的摄像机,请在视口窗口中单击并按住鼠标右键。按住鼠标右键的同时,您可以通过移动鼠标环顾四周,并通过按键盘上的 W、A、S 和 D 键四处飞行。在世界大纲中找到cesiumsunsky的详细页中的directionalight中的光源强度,并将光源改为10.0lux。它保持相对于其在地球上的坐标的位置,而不是标准的虚幻引擎世界坐标。将这些变量更改为您喜欢的城市的坐标,或使用这些坐标前往美国伊利诺伊州芝加哥。在本教程中,你将设置所有资产都将使用的项目范围的访问令牌。在面板的快速添加基本。

weixin_71746365的博客 4184

UE5 C++ 斯坦福 Note1

Class Hierarchy (类的层次结构) Object 所有虚幻实例的基类 √ Actor 可以被放置或生成在世界中的Object √ √ Pawn 可以被玩家或AI控制的Actor √ √ √ Character 包含移动组件的Pawn √ √ √ √ *Character 我们继承重写的C++类 .....................

关宅 2106

虚幻引擎5 C++编程学习

虚幻引擎5 C++编程学习

weixin_45175664的博客 5375

[UnrealEngine] 虚幻引擎UE5下载及安装(UE4、UE5)

虚幻引擎5安装指南 虚幻引擎5是美国Epic公司开发的跨平台游戏引擎,支持次世代主机、PC和移动端开发,包含Nanite虚拟几何体和Lumen动态全局光照等核心技术。安装需先下载Epic Games启动程序(类似Adobe Creative Cloud平台),通过该程序注册账号后选择引擎版本安装。建议预留足够磁盘空间(引擎约26GB)。安装完成后,Epic Games平台还提供虚幻商城、工程库和资源组件等功能。最新5.6.1版本支持游戏、影视、VR/AR等多领域项目开发。

Unity3D Unreal 5814

[UnrealEngine] 虚幻引擎UE5地形入门指南 | UE5地形教程(UE5 Terrain)

本指南详细介绍了虚幻引擎中地形系统的使用流程。首先介绍了地形工具的三种模式(管理、雕刻、绘制)及基本操作。然后逐步演示了从新建FPS项目、创建地形、塑造地形形态到创建地形材质的全过程。重点讲解了如何通过图层混合节点实现不同材质的高度混合和权重混合,以及地形绘制的具体方法和常见问题解决。最后提供了优化技巧和外部工具推荐,如Houdini、WorldMachine等专业地形生成软件。全文通过图文并茂的步骤说明,帮助用户快速掌握虚幻引擎地形系统的核心功能,为创建高质量户外环境打下基础。

Unity3D Unreal 3656

【虚幻引擎UE】UE4.23到UE5.5的核心功能变化

简单总结从UE4.23到UE5.5,虚幻引擎的**重大变化**:

灵境引路人 4065

UE4安装教程,虚幻引擎安装教程,UE4的安装

UE4安装教程,虚幻引擎安装教程开始安装(1)打开主页功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 开始安装 虚幻引擎4(UE4)的安装比较简单,如果只做场景的搭建、蓝图的编写以及简单的C++函数插件开发,只需安装引擎即可,不太

weixin_38839543的博客 1万+

【UE5】使用虚幻引擎编辑器创建游戏

(输入事件):玩家按下按键。(逻辑处理):蓝图计算出玩家想要做什么。(执行动作):调用引擎内置的功能来真正移动角色或旋转视角。你现在看到的,就是模板已经为你搭建好的、功能完整的角色控制“代码”。如果你想添加新功能,比如“冲刺”,你就会创建一个新的IA_Sprint),然后从它后面连接新的蓝图逻辑。

突围 570

【虚幻引擎UE】UE5 阴影异常与优化

【虚幻引擎UE】UE5 阴影异常与优化解决方案合集

灵境引路人 3万+

VN5620硬件接口介绍

VECTOR, VN5620, 诊断

Fecostar的博客 7486

不用FFmpeg!纯前端实现RTSP直播的3种现代方案对比(WebSocket/Wasm/WebCodecs)

本文深入探讨了纯前端实现RTSP直播的三种现代技术方案:WebSocket代理转发、Wasm解码和WebCodecs硬解。通过详细的架构设计、性能实测数据和兼容性分析,帮助开发者在安防监控、智慧城市等场景中选择最佳方案,实现低延迟、高效率的视频流处理。

lilh34434的博客 231

多任务学习中的过拟合陷阱:动态停止训练机制详解与避坑指南

本文深入剖析了多任务学习中因任务过拟合不同步导致的性能下降问题,并详细介绍了动态停止-继续训练机制。该机制通过为每个任务设置独立的训练开关,基于验证集性能动态控制其梯度更新,有效缓解了任务间负迁移,是提升多任务模型整体泛化能力的关键策略。

happy2的博客 1092

【QT+PCL】串口读取单线激光雷达数据并在QVtkWidget组件中实时刷新(一)

(本文主要记录开发过程以及遇到的困难及解决方式)

2301_76329543的博客 3068

宝塔面板+pbootCMS建站全流程:从服务器选购到上线优化(附常见问题排查)

本文提供了一份详尽的宝塔面板与pbootCMS建站实战指南。内容涵盖从云服务器选购、宝塔面板部署与安全加固,到pbootCMS安装、权限配置、数据库连接等核心步骤。同时深入讲解了PHP环境优化、Nginx伪静态设置、缓存开启等性能与SEO优化技巧,并附有常见问题排查与后期维护建议,帮助用户高效、稳健地完成专业网站构建。

e4f5g6h的博客 661

Matlab安装Embedded Coder Support Package for Texas Instruments C2000 Processors教程

Matlab安装Embedded Coder Support Package for Texas Instruments C2000 Processors

m0_69133594的博客 2835

PT32F030与MT6826S SPI通讯实战:从硬件连接到数据交互全流程解析

本文详细解析了PT32F030与MT6826S通过SPI通讯的全流程,包括硬件连接、电路设计、SPI外设初始化配置以及数据交互协议实现。通过实战案例和代码示例,帮助开发者快速掌握PT32F030与MT6826S的SPI通讯技术,实现精准的角度和速度数据采集。

weixin_29189373的博客 420

把 sy-* 带进 ABAP CDS:ABAP 7.50 里的环境信息新姿势($session 与 @Environment.systemField 实战)

摘要:ABAP 7.50在CDS视图中引入两种获取环境信息的方式:1)直接使用$session会话变量读取用户、客户端和系统语言;2)通过@Environment.systemField注解参数,由Open SQL自动注入系统字段。$session方式简单但依赖Open SQL访问路径,非ABAP环境下可能失效;注解参数方案更工程化,依赖关系明确且支持测试。建议ABAP体系内优先使用$session,对外接口采用参数化方案。两种方式各有适用场景,正确选择可避免潜在风险。(148字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 154

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: UE5 陷阱伤害+游戏失败
下一篇: UE5 怪物沿固定路线移动
windwind2000
博客等级 码龄2年 1152粉丝 244原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值