NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Debug/DebugScreen.cs

47 lines
1.1 KiB
C#
Raw Normal View History

using BehaviorDesigner.Runtime.Tasks.Unity.UnityGameObject;
using UnityEngine;
using Framework;
using PhxhSDK;
//屏幕相关debug类
public class DebugScreen: Singlenton<DebugScreen>
{
public bool IsShowSafeArea;
private GameObject _goSafeArea;
//显示安全区域
private async void _ShowSafeArea()
{
var prefabPath = "Assets/Art/UI/Prefab/Debug/DebugScreenSafeArea.prefab";
var asset = await AssetManager.Instance.LoadAssetAsync<GameObject>(prefabPath);
if (!_goSafeArea)
{
_goSafeArea = Object.Instantiate(asset, UIRoot.Instance.Root.transform);
}
}
private void _DestroySafeArea()
{
Object.DestroyImmediate(_goSafeArea);
_goSafeArea = null;
}
public void DrawSafeAreaRect()
{
var rect = Screen.safeArea;
rect.height = -rect.height;
rect.y = Screen.height - rect.y;
GUI.Box(rect, "");
}
public void DebugChangeShowAreaState()
{
if (IsShowSafeArea)
{
_ShowSafeArea();
return;
}
_DestroySafeArea();
}
}