性能优化
资源压缩
在图片资源上右键选择Size Map可以看到资源所占大小,将右上角切换成Memory Size,所占内存大小,如果发现这个资源所占太大,就可以考虑压缩一下图片大小,看看效果是否满足需求,这个会把引用到的资产所占用内存一同显示出来
粒子优化
很多游戏里面,粒子优化是大头,因为游戏中生成的粒子亮级也会根据不同游戏,情况也不同。
首先按Alt+8打开粒子复杂度,下面有个参照表,可以看到粒子的复杂情况,越绿性能越好,反之亦然。优化粒子,不外乎,减少粒子数量,修改粒子颜色等等,这个也需要根据不同游戏,配合着特效进行优化。
点Perfomance可以看到资源消耗占比,可以根据它进行系统优化
NavMesh
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