You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
mapbox-sdk/Unity/Utilities/MapVisualizerPerformance.cs

70 lines
1.5 KiB

namespace Mapbox.Unity.Utilities
{
using Mapbox.Unity.Map;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using UnityEngine;
public class MapVisualizerPerformance : MonoBehaviour
{
private Stopwatch _sw = new Stopwatch();
private AbstractMap _map;
private AbstractMapVisualizer _mapVisualizer;
public int TestCount = 10;
private int _currentTest = 1;
[NonSerialized]
public float TotalTime = 0;
private float _firstRun;
protected virtual void Awake()
{
TotalTime = 0;
_currentTest = 1;
_map = FindObjectOfType<AbstractMap>();
_mapVisualizer = _map.MapVisualizer;
_mapVisualizer.OnMapVisualizerStateChanged += (s) =>
{
if (s == ModuleState.Working)
{
_sw.Reset();
_sw.Start();
}
else if (s == ModuleState.Finished)
{
_sw.Stop();
if (_currentTest > 1)
{
TotalTime += _sw.ElapsedMilliseconds;
UnityEngine.Debug.Log("Test " + _currentTest + ": " + _sw.ElapsedMilliseconds);
}
else
{
_firstRun = _sw.ElapsedMilliseconds;
}
if (TestCount > _currentTest)
{
_currentTest++;
Invoke("Run", 1f);
}
else
{
if (_currentTest > 1)
{
UnityEngine.Debug.Log("First Run: " + _firstRun + " \r\nRest Average: " + TotalTime / (_currentTest - 1));
}
}
}
};
}
public void Run()
{
//TODO : FIX THIS ERROR
//_map.Reset();
}
}
}