虚幻引擎UI的制作与优化
本文最后更新于:2025年11月6日 晚上
Slate基础原理

SWiget控件的类型

Slot参数

布局流程

计算控件大小

有一些函数会Prepass,比如字符串,这种无法预先知道大小
CPU优化
一些基础的优化手段

手机看不太清可以更激进
逻辑清晰的时候,可以override上述提到的,比如说计算size,直接给出答案或者缓存,可以加快速度
LayerId其实就是调用OnPaint的返回值
无效盒
会自动缓存
RetainerBox:其实就是比如说一个很复杂的图,我提前画好,之后每次都直接用这个就好了,但是会费一点内存

在UI上显示模型
UERT是什么?这个不太懂(需要查找一下)
AI解释:
核心组件解释
1. SceneCaptureComponent2D
一个场景捕获组件,用于捕获场景的2D视图(相机视角)
类似于给场景拍一张照片/截图
可以放在一个独立的场景或 Actor 中,让模型在视野中渲染
2. RT(Render Target)
这里指 Render Target(渲染目标),不是 Ray Tracing
一个纹理资源,用于存储渲染结果
SceneCaptureComponent2D 会把渲染内容输出到这个纹理上
在 UE 中通常是 TextureRenderTarget2D
3. Image 控件
UI 中的图片控件(UMG/Widget 中的 Image Widget)
可以显示纹理
把 Render Target 赋给 Image 控件,就能在 UI 中显示
工作原理流程
3D模型 → SceneCaptureComponent2D捕获 → Render Target纹理 → Image控件显示
放置模型和 SceneCaptureComponent2D
组件把模型的渲染结果输出到 Render Target
在蓝图中将 Render Target 赋给 Image 控件的 Brush 或 Texture

如何把这个Slate导出成UMG来使用?

Brush和材质
Brush
