public void Update() { #if !UNITY_EDITOR if (!CommonScriptableObjects.focusState.Get()) { return; } #endif if (!CommonScriptableObjects.rendererState.Get()) { return; } var deltaInMs = Time.deltaTime * 1000; tracker.AddDeltaTime(Time.deltaTime); performanceMetricsDataVariable?.Set(tracker.CurrentFPSCount(), tracker.CurrentHiccupCount(), tracker.HiccupsSum, tracker.GetTotalSeconds()); encodedSamples[currentIndex++] = (char)deltaInMs; if (currentIndex == SAMPLES_SIZE) { currentIndex = 0; Report(new string(encodedSamples)); } }
public void BehavesLikeFPSCounter() { LinealBufferHiccupCounter counter = new LinealBufferHiccupCounter(); const float tenMillis = 0.01f; const float expectedFps = 100.0f; for (int i = 0; i < 100; i++) { counter.AddDeltaTime(tenMillis); } Assert.AreEqual(counter.CurrentFPSCount(), expectedFps); }