备忘

 

Q.UE4扩展Stat,埋点监听函数作用域内-调用所产生的性能消耗..

例如,会自动计数并计算调用平均值等..

UE4-程序性能优化与调试相关笔记

 

说明:

如图

Collsion为群组

SceneQueryTotal为埋点项..

UE4支持通过预设宏快速的定义Stat群组:(当然可以往已经存在的群组添加新埋点,如图片里的STATGROUP_Collision群组)

DECLARE_STATS_GROUP: 自定义Stat群组
DECLARE_CYCLE_STAT :自定义埋点
SCOPE_CYCLE_COUNTER:监听函数性能消耗

Step 1:

定义Stat群组:

建议可放在PCH.h中 or *.module.h 中

DECLARE_STATS_GROUP(TEXT("Display Name"), STATGROUP_群组名称, STATCAT_Advanced);

 

Step 2:

定义埋点:

埋点所属的群组名称为Step 1定义的或已经存在的群组:如STATGROUP_Collision
建议放监听函数所在.cpp
DECLARE_CYCLE_STAT(TEXT("Display Name"), STAT_你的埋点名称, 埋点所属的群组名称); // 

Step 3:

使用埋点监听你所需要监听的函数的性能消耗:

void MyClass::MyFunc()
    {
        SCOPE_CYCLE_COUNTER(你的埋点名称); 

    // do something....
  }

Step 4:

Editor中Console 输入

Stat 你的群组名称

进行监听

 

相关文章: