欢迎光临散文网 会员登陆 & 注册

【UE4】非常好用的几个监控代码执行效率的宏,可在Stat中查看

2021-12-15 11:39 作者:天空游荡的鱼  | 我要投稿

    在C++开发的过程中,有时可能会想要监控某段代码执行效率。方便以后再性能调优的时候发现问题。UE C++给我们提供了三个宏,可以很方便的实现这一目的,并且用stat XXX命令进行查看。现在我们就一起去看看吧。

    DECLARE_STATS_GROUP(TEXT("MyStat"), STATGROUP_MyStat, STATCAT_Test);

三个参数分别为:

1. FString的类别,也就是出现在stat 后面的参数。 (最常用的就是stat fps)

2. 组的名字,由大些的STATGROUP_ 后面加上你自己的分组。显示在stat面板

3. 类别,由STATCAT_后面加上你自己的类别名。此项出现在,编辑器场景编辑界面的三角下拉框中stat下。会放到对应的菜单中。(也可以用已有的类别例如:Advanced,Engine,Niagara)

下图可以看到具体效果

(图一)stat对应参数及分组名称
(图二)出现在下拉菜单中的类别

    DECLARE_CYCLE_STAT(TEXT("MyActor Tick"), STAT_Tick, STATGROUP_MyStat);

定义显示性能耗时指标的子项,三个参数分别为

  1. FString类型的子项名称。出现在性能监视界面的一行

  2. 代码中监控性能用的Key值,在具体监控时会用到

  3. 性能显示结果放到哪个群组。这里是刚才定义的MyStat这个组

在图一中可以看到性能监测界面出现一行数据,MyActorTick。

    SCOPE_CYCLE_COUNTER(STAT_Tick);

在具体需要监测的代码使用该宏,参数为第二个宏中定义的监控Key值。

(图三)相关实现代码


【UE4】非常好用的几个监控代码执行效率的宏,可在Stat中查看的评论 (共 条)

分享到微博请遵守国家法律