录制特定采样器生成的性能分析数据。
录制器会累积帧期间每个 Begin/End 对所用的时间。 启用后,它会对采样器生成的 Begin 和 End 样本之间的增量时间求和。 使用 elapsedNanoseconds 可获取前一帧的累积时间。
using UnityEngine;
using UnityEngine.Profiling;
public class ExampleClass : MonoBehaviour
{
Recorder behaviourUpdateRecorder;
void Start()
{
behaviourUpdateRecorder = Recorder.Get("BehaviourUpdate");
behaviourUpdateRecorder.enabled = true;
}
void Update()
{
if (behaviourUpdateRecorder.isValid)
Debug.Log("BehaviourUpdate time: " + behaviourUpdateRecorder.elapsedNanoseconds);
}
}
注意:
无论性能分析器状态如何,录制器都会收集数据。启用录制器后,每次按采样器时都会累积数据。
这些信息等同于您在 Profiler Window 的 Hierarchy 视图中看到的信息。
目前,采样器仅在 Editor 和 Development Player 中可用。使用 Recorder.isValid 可验证录制器能否收集数据。
See Also: Sampler, Recorder.isValid, [[Recorder::elapsedNanoseconds]].
elapsedNanoseconds | 前一帧的 Begin/End 对的累积时间(以纳秒为单位)。(只读) |
enabled | 启用录制。 |
isValid | 如果录制器有效且可收集数据,则返回 true。(只读) |
sampleBlockCount | 在前一帧中调用 Begin/End 对的次数。(只读) |
Get | 使用此函数可获取特定性能分析器标签的录制器。 |