AlicizaX/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs
陈思海 eb38f67131 init
2025-01-23 19:06:48 +08:00

41 lines
1.6 KiB
C#

using AlicizaX;
using AlicizaX.Runtime;
using UnityEngine;
namespace AlicizaX.Debugger.Runtime
{
public sealed partial class DebuggerComponent : GameFrameworkComponent
{
private sealed class InputAccelerationInformationWindow : ScrollableDebuggerWindowBase
{
protected override void OnDrawScrollableWindow()
{
GUILayout.Label("<b>Input Acceleration Information</b>");
GUILayout.BeginVertical("box");
{
DrawItem("Acceleration", Input.acceleration.ToString());
DrawItem("Acceleration Event Count", Input.accelerationEventCount.ToString());
DrawItem("Acceleration Events", GetAccelerationEventsString(Input.accelerationEvents));
}
GUILayout.EndVertical();
}
private string GetAccelerationEventString(AccelerationEvent accelerationEvent)
{
return Utility.Text.Format("{0}, {1}", accelerationEvent.acceleration, accelerationEvent.deltaTime);
}
private string GetAccelerationEventsString(AccelerationEvent[] accelerationEvents)
{
string[] accelerationEventStrings = new string[accelerationEvents.Length];
for (int i = 0; i < accelerationEvents.Length; i++)
{
accelerationEventStrings[i] = GetAccelerationEventString(accelerationEvents[i]);
}
return string.Join("; ", accelerationEventStrings);
}
}
}
}