UE4 / UE5 内存与性能优化

性能优化

资源压缩

在图片资源上右键选择Size Map可以看到资源所占大小,将右上角切换成Memory Size,所占内存大小,如果发现这个资源所占太大,就可以考虑压缩一下图片大小,看看效果是否满足需求,这个会把引用到的资产所占用内存一同显示出来

粒子优化

很多游戏里面,粒子优化是大头,因为游戏中生成的粒子亮级也会根据不同游戏,情况也不同。

首先按Alt+8打开粒子复杂度,下面有个参照表,可以看到粒子的复杂情况,越绿性能越好,反之亦然。优化粒子,不外乎,减少粒子数量,修改粒子颜色等等,这个也需要根据不同游戏,配合着特效进行优化。


点Perfomance可以看到资源消耗占比,可以根据它进行系统优化

Project Settings里面的NavMesh使用了Dynamic,并勾选了Navigation System -> Navigation System->Initial Building Locked,运行起来会启用build,比起静态的P键,差距太大,不建议使用

Generate Overlap Event

不需要的都祛除勾选,官方论坛资料

GCMarkTime

参考:官方论坛资料

光照优化

场景中按alt + 7,与粒子优化类似

Shader优化

场景中按alt +8

卡的时间长

运行起来执行命令:stat dumphitches,输入log信息,里面包含了所花时间,官方命令文档

LOD

原理:超过某个距离后将多个静态网格替换成简化后的静态网格,减少需要绘制的三角形面数(也就是减少Draw Call)
官方文档

性能工具千千万,不外乎就是看谁占用资源大,然后去分析为什么占用大,如何裁,比如阻塞式加载大量资源时候,就会导致卡死,优化手段有几种,比如多帧去加载异步地去一部分资源,放另一个线程去加载。一个资源如何直接使用,就是会在游戏运行之初,就开始加载资源,放在内存中,现象就是刚运行时候会卡很久,所以,为什么会大量采用软引用呢,当然是很多资源,都希望用的时候加载,而不是一直存在内存中,但是,资源在用的时候才加载,那一定是需要时间的,提前加载资源,那又该在何段时间,也需要大家去考虑。

官方CPU、GPU Insights、stat cpu、 ue4 memory report、inter GPA 、RenderDOC、减少模型面数等

官方视频
官方文档
inter GPA
RenderDoc
官方减面工具,好像在UE5上没了

Merge Actor

相关推荐
侑虎科技6 小时前
在UE5中,预测脚步IK实现-PredictFootIK
性能优化·unreal engine
bluceli2 天前
前端性能优化实战指南:让你的网页飞起来
前端·性能优化
冰_河3 天前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化
叶智辽4 天前
【Three.js内存管理】那些你以为释放了,其实还在占着的资源
性能优化·three.js
BigByte5 天前
我用 6 个 WASM 编码器干掉了 Canvas.toBlob(),图片压缩率直接提升 15%
性能优化·webassembly·图片资源
DemonAvenger6 天前
Kafka性能调优:从参数配置到硬件选择的全方位指南
性能优化·kafka·消息队列
桦说编程6 天前
实战分析 ConcurrentHashMap.computeIfAbsent 的锁冲突问题
java·后端·性能优化
小马爱打代码7 天前
MySQL性能优化核心:InnoDB Buffer Pool 详解
数据库·mysql·性能优化
顾青7 天前
仅仅一行 CSS,竟让 2000 个节点的页面在弹框时卡成 PPT?
前端·vue.js·性能优化
山峰哥7 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器