UE 优化

参考:风恋残雪的博客

Stat unit

  1. 启动一个非Debug的游戏进程

  2. 打开控制台输入 Stat UNIT 。PC端 ` , Android 四指点击

  3. 正常的渲染状态:

  4. 名称 功能
    Frame 产生一帧的时间
    Game 游戏逻辑线程(Game会与Draw在一帧结束时同步,因此两者会保持相近)
    Draw 渲染线程
    GPU 测量了显卡渲染当前场景所花的时间(与Frame同步)
  5. 非正常渲染状态:

    • 如果Frame与Game相近,那么瓶颈发生在Game(游戏逻辑)

    • 如果Frame与Draw相近,那么瓶颈发生在Draw(渲染线程)

    • 如果Frame与GPU相近,那么瓶颈发生在GPU(显卡配置)

数据摘取

  1. 可以在非Debug的游戏中,输入指令 Stat StartFile

  2. 此时可以看到游戏左上角出现一些问题,包括了时间(单位为ms)。等待15s左右

  3. 再次输入指令 Stat StopFile

  4. 找到项目路径:

  5. 打开UE项目的Session Frontend(打开时可能有卡顿,不浮躁,等等她~)

    • UE4 的项目请在UE4 打开 Session Frontend。因为UE4 的是 .ue4stats 文件

    • UE5 的项目请在UE5 打开 Session Frontend。但是UE5 的是 .uestats 文件

  6. 选择 Profiler 标签页,使用 Load 查找上面的文件

  7. 右下角就是消耗性能的部分。

    • Average则是平均帧耗时,而Maximun则是耗时总和(颜色越红,消耗的总量越大)

    • 可以选择 Maximun来查看消耗性能最大的部分

  8. 上方的蓝色区域是可以通过鼠标框选的,因此可以自定义查看某部分的高峰值。由于这个例子截图性能优化不错,所以没什么波动。

GPU 分析

在UE中使用快捷键(Ctrl+Shift+ , )打开GPU Visualizer

常用性能优化指令

  • stat unit

  • stat sceneRendering

  • stat engine

  • stat initViews

  • stat game

  • stat Slow

  • viewMode ShaderComplexity

  • Stat UnitGraph

更多指令:虚幻引擎Stat命令

UE优化性能的更多相关文章

  1. [经验] Win7减肥攻略(删文件不删功能、简化优化系统不简优化性能)

    [经验] Win7减肥攻略(删文件不删功能.简化优化系统不简优化性能) ☆心梦无痕☆ 发表于 2014-1-24 11:15:04 https://www.itsk.com/thread-316471 ...

  2. 使用Concurrency Visualizer优化性能

    Concurrency Visualizer: https://msdn.microsoft.com/en-us/library/dd537632.aspx?f=255&MSPPError=- ...

  3. Python禁用GC优化性能

    Python使用的(Garbage Collection, GC)机制是引用计数(Reference Count),其原理是为每一个内存对象进行引用计数,因此当有大量的对象新建或删除时,必须要进行大量 ...

  4. IOS 通过 代码 自定义cell(Cell的高度不一致)(优化性能)

    创建cell的步骤 1.新建一个继承自UITabelViewCell的类 2.重写 initWithStyle:ReuseIdentifier: 方法 添加所有需要显示的子控件(不需要设置子控件的数据 ...

  5. 【SQL Server 优化性能的几个方面】(转)

    转自:http://blog.csdn.net/feixianxxx/article/details/5524819     SQL Server 优化性能的几个方面 (一).数据库的设计 可以参看最 ...

  6. 使用Lua 局部变量来优化性能,同一时候比較局部变量和全局变量

    在竞争激烈的游戏行业中,尤其页游,面对策划复杂和频繁的需求,使用脚本能够减少难度和成本.在使用Lua的过程中,会常常訪问全局变量来作为配置文件. 在訪问全局变量时,能够通过局部变量引用全局变量来优化. ...

  7. CQRS之旅——旅程7(增加弹性和优化性能)

    旅程7:增加弹性和优化性能 到达旅程的终点:最后的任务. "你不能飞的像一只长着鹪鹩翅膀的老鹰那样."亨利·哈德逊 我们旅程的最后阶段的三个主要目标是使系统对故障更具弹性,提高UI ...

  8. MySQL优化 - 性能分析与查询优化(转)

    出处:  MySQL优化 - 性能分析与查询优化 优化应贯穿整个产品开发周期中,比如编写复杂SQL时查看执行计划,安装MySQL服务器时尽量合理配置(见过太多完全使用默认配置安装的情况),根据应用负载 ...

  9. ASP.NET中常用的优化性能的方法

    1. 数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源.ASP.NET中提供了连接池( ...

随机推荐

  1. 硬件错误导致的crash

    [683650.031028] BUG: unable to handle kernel paging request at 000000000001b790--------------------- ...

  2. Sirni题解(最小生成树,埃氏筛)(继 Liang-梁)

    目录 前言 题意 思路 一些建议 前言 本篇是对Liang-梁的Sirni(最小生成树,埃氏筛)的后继博客. 通篇原文:https://blog.csdn.net/qq_37555704/articl ...

  3. 在Linux下配置RealVNC和TigerVNC

    作者:alittlemc | 更新中 | 原创文章,可能有技术理解错误,欢迎指正,请与我联系,谢谢! 命令和快速总结 realvnc创建# :会话id -name 取名字 -depth 色深 -geo ...

  4. 全网最简单的大文件上传与下载代码实现(React+Go)

    前言 前段时间我需要实现大文件上传的需求,在网上查找了很多资料,并且也发现已经有很多优秀的博客讲了大文件上传下载这个功能. 我的项目是个比较简单的项目,并没有采用特别复杂的实现方式,所以我这篇文章的目 ...

  5. 国内外各大物联网IoT平台鸟瞰和资源导航

    一.国内外物联网平台 国内 百度物接入IoT Hub 阿里云物联网套件 智能硬件开放平台 京东微联 机智云IoT物联网云服务平台及智能硬件自助开发平台 庆科云FogCloud Ablecloud物联网 ...

  6. 《Java基础——循环语句》

    Java基础--循环语句       1. while语句: 规则: 1. 首先计算表达式的值. 2. 若表达式为真,则执行循环语法,直至表达式为假,循环结束.   格式: while(表达式) 语句 ...

  7. 图与A*算法

    同时根据每条边的实际情况,采用权重来表示他们的不同,权重可以是负的. 往这个图中添加顶点的成本非常昂贵,因为新的矩阵结果必须重新按照新的行/列创建,然后将已有的数据复制 到新的矩阵中. 图的数据结构: ...

  8. 如何使用 Git 管理配置文件

    现在很多软件的配置都可以在线同步或者支持导入导出,可以很方便的在不同设备上使用.但电脑上还有很多本地配置文件没有办法同步,夸多个设备使用时很难保持一致,换电脑也很麻烦.其实可以使用 Git 来管理这些 ...

  9. 使用ingress-nginx

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247496824&idx=1&sn=cd845d77 ...

  10. 第三章:模版层 - 2:Django内置模板标签

    Django内置标签总览 可以查询下表来总览Django的内置标签: 标签 说明 autoescape 自动转义开关 block 块引用 comment 注释 csrf_token CSRF令牌 cy ...