45 lines
1.0 KiB
C#
45 lines
1.0 KiB
C#
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;
|
|
GUI.Box(rect, "");
|
|
}
|
|
|
|
public void DebugChangeShowAreaState()
|
|
{
|
|
if (IsShowSafeArea)
|
|
{
|
|
_ShowSafeArea();
|
|
return;
|
|
}
|
|
|
|
_DestroySafeArea();
|
|
}
|
|
} |