UWA API ,优化逼格蹭蹭蹭

自定义代码段测试

UWAEngine.PushSample/PopSample
public static void PushSample(string sampleName);
public static void PopSample();

参数

sampleName 自定义的函数标签

描述

在UWAEngine中添加一个自定义的函数标签,UWAEngine会对PushSamplePopSample之间的代码段统计CPU和堆内存开销,以及其他信息,并在UWA报告中的特定模块中进行显示。

示例

UWAEngine.PushSample(“MyCode”);
// My Beautiful Code
UWAEngine.PopSample();

报告界面

通过 PushSample 和 PopSample API, 您可以对任意代码段的性能进行分解和测试,并在测评报告中查看其详细的性能开销。

UWA Tech Doc

注意: 请确保 PushSample 和 PopSample 是成对使用的。如果两者之间使用了return语句提前退出代码段(或者在协程中使用yield return提前跳出代码段),则会造成 PushSample 和 PopSample 的配对不准确,从而导致数据错误。


自定义变量测试

在性能分析过程中,我们不仅希望可以对任意的代码段进行分析,同时我们也希望对某些重要参数进行监控。因此,UWA提供了相应的API,以方便您对代码变量进行全面的监控。

UWAEngine.Register 
public static void Register(object classObj, string instanceName, string fieldName, float updateInterval);

参数

classObj 类的实例
instanceName 实例的命名标签
fieldname 需要记录的非静态field的名字(field的类型只支持int,bool,float)
updateInterval 更新记录的时间间隔(单位:秒)

描述

在UWAEngine中添加一个类的对象,以及一个非静态变量名,并附上自定义的变量标签,UWAEngine会按照指定的时间间隔自动更新及记录该值,并在UWA报告中的特定模块中显示对应的曲线,曲线名为:classObj(instanceName).fieldname的名字。

示例

UWAEngine.Register(this, “Single”, “_positionX”, 1.0f);

报告界面

通过 UWAEngine.Register API, 您可以对重要变量参数进行监控,并在测评报告中查看其具体的使用情况。

UWA Tech Doc

 public static void Register(Type classType, string fieldName, float updateInterval);

参数

classType 类的类型
fieldname 需要记录的静态field的名字 (field的类型只支持int,bool,float)
updateInterval 更新记录的时间间隔

描述

在UWAEngine中添加一个类的类型,以及一个静态变量名,并附上自定义的变量标签,UWAEngine会按照指定的时间间隔自动更新及记录该值,并在UWA报告中的特定模块中显示对应的曲线,曲线名为:classType.field的名字。

示例

UWAEngine.Register(typeof(TerrainManager), “_currentTerrainIndex”, 1.0f);

报告界面

通过 UWAEngine.Register API, 您可以对重要变量参数进行监控,并在测评报告中查看其具体的使用情况。

UWA Tech Doc

UWAEngine.LogValue 
public static void LogValue(string valueName, float value);
public static void LogValue(string valueName, int value);
public static void LogValue(string valueName, bool value);

参数

valueName 自定义的变量标签
value 变量的值

描述

在UWAEngine中添加一个自定义的变量标签以及当前的数值, UWAEngine会记录下添加的时间点以及其数值,并在UWA报告中的特定模块中显示对应的曲线。

示例

UWAEngine.LogValue(“A Bool”, true);
UWAEngine.LogValue(“A Int”, Time.frameCount);
UWAEngine.LogValue(“A Float”, Time.deltaTime);

报告界面

通过 UWAEngine.LogValue API, 您可以特定时刻对指定变量参数进行监控,并在测评报告中查看其具体的使用情况。

UWA Tech Doc

注意:对于实时变化的变量,可以在Update中调用LogValue,而对于偶尔变化的变量,可以在改变时调用LogValue。
该功能目前仅对”专业会员“开放,同时UWA会不断推出智能省心的工具,实现简单优化、优化简单的成效。





原文出处:侑虎科技
转载请与作者联系,同时请务必标明文章原始出处和原文链接及本声明。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值