以下部分概述了库正常运行不需要的高级用法主题。
其他支持的跟踪器
Tuning Fork支持多个跟踪器。支持具有以下工具键的跟踪器
- 帧开始之间的时间(称为
PACED_FRAME_TIME
) - CPU时间:帧开始到帧CPU工作结束之间的时间(称为
CPU_TIME
) - GPU时间:前一帧由GPU处理的时间(称为
GPU_TIME
) - 原始帧时间,定义为CPU和GPU时间的最大值(称为
RAW_FRAME_TIME
)。此选项与PACED_FRAME_TIME
的区别在于,此选项不包括Swappy或VSync包含的任何等待时间。
您可以在参考文档中找到这些工具键。启用Android帧速率调整库时,会自动使用其中一些键,但如果您没有启用此库,则应显式使用它们。
获取保真度参数
如果您将fidelity_params_callback
传递给设置中的TuningFork_init
或库处于缩放模式,则无需调用此函数。
此函数联系服务器以检索保真度参数。它会阻塞,直到发生以下情况之一
- 检索到保真度参数,返回值为
TFERROR_OK
,并且returnedParams
存储参数。在这种情况下,所有后续滴答数据都与returnedParams
关联。 - 经过
timeout_ms
毫秒数,返回值为TFERROR_TIMEOUT
。在这种情况下,所有后续滴答数据都与defaultFidelityParams
关联。
您必须在此函数之前调用TuningFork_init()
,并且必须在主线程之外的单独线程上调用它(参见TuningFork_startFidelityParamDownloadThread()
,这是一个为您执行此操作的实用程序函数)。您可以再次调用此函数,例如在关卡加载时,以再次从服务器检索保真度参数。这允许您动态更新参数,而不必仅在启动时重新加载它们。如果下载了新的保真度参数或使用了新的默认值,则会提交所有以前的滴答数据。