diff --git a/Assets/TEngine/Editor/Inspector/UIModuleInspector.cs b/Assets/TEngine/Editor/Inspector/UIModuleInspector.cs index e35893b2..fa418502 100644 --- a/Assets/TEngine/Editor/Inspector/UIModuleInspector.cs +++ b/Assets/TEngine/Editor/Inspector/UIModuleInspector.cs @@ -8,10 +8,6 @@ namespace TEngine.Editor.Inspector private SerializedProperty m_InstanceRoot = null; private SerializedProperty m_dontDestroyUIRoot = null; private SerializedProperty m_UICamera = null; - private SerializedProperty m_UIGroups = null; - - private HelperInfo m_UIWindowHelperInfo = new HelperInfo("UIWindow"); - private HelperInfo m_UIGroupHelperInfo = new HelperInfo("UIGroup"); public override void OnInspectorGUI() { @@ -26,17 +22,9 @@ namespace TEngine.Editor.Inspector EditorGUILayout.PropertyField(m_InstanceRoot); EditorGUILayout.PropertyField(m_dontDestroyUIRoot); EditorGUILayout.PropertyField(m_UICamera); - m_UIWindowHelperInfo.Draw(); - m_UIGroupHelperInfo.Draw(); - EditorGUILayout.PropertyField(m_UIGroups, true); } EditorGUI.EndDisabledGroup(); - if (EditorApplication.isPlaying && IsPrefabInHierarchy(t.gameObject)) - { - EditorGUILayout.LabelField("UI Group Count", t.UIGroupCount.ToString()); - } - serializedObject.ApplyModifiedProperties(); Repaint(); @@ -54,18 +42,12 @@ namespace TEngine.Editor.Inspector m_InstanceRoot = serializedObject.FindProperty("m_InstanceRoot"); m_dontDestroyUIRoot = serializedObject.FindProperty("m_dontDestroyUIRoot"); m_UICamera = serializedObject.FindProperty("m_UICamera"); - m_UIGroups = serializedObject.FindProperty("m_UIGroups"); - - m_UIWindowHelperInfo.Init(serializedObject); - m_UIGroupHelperInfo.Init(serializedObject); RefreshTypeNames(); } private void RefreshTypeNames() { - m_UIWindowHelperInfo.Refresh(); - m_UIGroupHelperInfo.Refresh(); serializedObject.ApplyModifiedProperties(); } } diff --git a/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs b/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs deleted file mode 100644 index 1fa3a982..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs +++ /dev/null @@ -1,77 +0,0 @@ -using UnityEngine; - -namespace TEngine -{ - /// - /// 默认界面辅助器。 - /// - public class DefaultUIWindowHelper : UIWindowHelperBase - { - private ResourceModule _mResourceModule = null; - - private Vector2 m_Half = new Vector2(0.5f,0.5f); - - private int m_UILayer; - - private void Start() - { - m_UILayer = LayerMask.NameToLayer("UI"); - _mResourceModule = GameEntry.GetModule(); - if (_mResourceModule == null) - { - Log.Fatal("Resource component is invalid."); - return; - } - } - - /// - /// 实例化界面。 - /// - /// 要实例化的界面资源。 - public override object InstantiateUIWindow(object uiWindowAsset) - { - return Instantiate((Object)uiWindowAsset); - } - - /// - /// 创建界面。 - /// - /// 界面实例。 - /// 界面所属的界面组。 - /// 用户自定义数据。 - /// 界面。 - public override UIWindow CreateUIWindow(object uiWindowInstance, IUIGroup uiGroup, object userData) - { - GameObject obj = uiWindowInstance as GameObject; - if (obj == null) - { - Log.Error("UI form instance is invalid."); - return null; - } - - Transform trans = obj.transform; - trans.SetParent(((MonoBehaviour)uiGroup.Helper).transform); - trans.localScale = Vector3.one; - trans.localPosition = Vector3.zero; - obj.layer = m_UILayer; - - RectTransform rectTransform = obj.GetComponent(); - rectTransform.anchorMin = m_Half; - rectTransform.anchorMax = m_Half; - rectTransform.anchoredPosition = Vector2.zero; - // return obj.GetOrAddComponent(); - return null; - } - - /// - /// 释放界面。 - /// - /// 要释放的界面资源。 - /// 要释放的界面实例。 - public override void ReleaseUIWindow(object uiWindowAsset, object uiWindowInstance) - { - // m_ResourceComponent.UnloadAsset(uiWindowAsset); - Destroy((Object)uiWindowInstance); - } - } -} diff --git a/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs.meta deleted file mode 100644 index 73c4ddb8..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/DefaultUIWindowHelper.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 22c9da1f4aa8420ab1210d65b8403993 -timeCreated: 1680514816 \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs deleted file mode 100644 index 5f0c0f7f..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs +++ /dev/null @@ -1,44 +0,0 @@ -using UnityEngine; -using UnityEngine.UI; - -namespace TEngine -{ - /// - /// 默认界面组辅助器。 - /// - public class DefaultUIGroupHelper : UIGroupHelperBase - { - public const int DepthFactor = 10000; - private int m_Depth = 0; - private Canvas m_CachedCanvas = null; - - /// - /// 设置界面组深度。 - /// - /// 界面组深度。 - public override void SetDepth(int depth) - { - m_Depth = depth; - m_CachedCanvas.overrideSorting = true; - m_CachedCanvas.sortingOrder = DepthFactor * depth; - } - - private void Awake() - { - m_CachedCanvas = gameObject.GetOrAddComponent(); - gameObject.GetOrAddComponent(); - } - - private void Start() - { - m_CachedCanvas.overrideSorting = true; - m_CachedCanvas.sortingOrder = DepthFactor * m_Depth; - - RectTransform rectTransform = GetComponent(); - rectTransform.anchorMin = Vector2.zero; - rectTransform.anchorMax = Vector2.one; - rectTransform.anchoredPosition = Vector2.zero; - rectTransform.sizeDelta = Vector2.zero; - } - } -} diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs.meta deleted file mode 100644 index 03eaa464..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/DefaultUIGroupHelper.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1686306ee1ba46b59e0405d121ad7cfe -timeCreated: 1680514816 \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs deleted file mode 100644 index 3f036e74..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs +++ /dev/null @@ -1,114 +0,0 @@ -using System.Collections.Generic; - -namespace TEngine -{ - /// - /// 界面组接口。 - /// - public interface IUIGroup - { - /// - /// 获取界面组名称。 - /// - string Name - { - get; - } - - /// - /// 获取或设置界面组深度。 - /// - int Depth - { - get; - set; - } - - /// - /// 获取或设置界面组是否暂停。 - /// - bool Pause - { - get; - set; - } - - /// - /// 获取界面组中界面数量。 - /// - int UIWindowCount - { - get; - } - - /// - /// 获取当前界面。 - /// - UIWindow CurrentUIWindow - { - get; - } - - /// - /// 获取界面组辅助器。 - /// - UIGroupHelperBase Helper - { - get; - } - - /// - /// 界面组中是否存在界面。 - /// - /// 界面序列编号。 - /// 界面组中是否存在界面。 - bool HasUIWindow(int serialId); - - /// - /// 界面组中是否存在界面。 - /// - /// 界面资源名称。 - /// 界面组中是否存在界面。 - bool HasUIWindow(string uiWindowAssetName); - - /// - /// 从界面组中获取界面。 - /// - /// 界面序列编号。 - /// 要获取的界面。 - UIWindow GetUIWindow(int serialId); - - /// - /// 从界面组中获取界面。 - /// - /// 界面资源名称。 - /// 要获取的界面。 - UIWindow GetUIWindow(string uiWindowAssetName); - - /// - /// 从界面组中获取界面。 - /// - /// 界面资源名称。 - /// 要获取的界面。 - UIWindow[] GetUIWindows(string uiWindowAssetName); - - /// - /// 从界面组中获取界面。 - /// - /// 界面资源名称。 - /// 要获取的界面。 - void GetUIWindow(string uiWindowAssetName, List results); - - /// - /// 从界面组中获取所有界面。 - /// - /// 界面组中的所有界面。 - UIWindow[] GetAllUIWindows(); - - /// - /// 从界面组中获取所有界面。 - /// - /// 界面组中的所有界面。 - void GetAllUIWindows(List results); - } -} diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs.meta deleted file mode 100644 index 4531b26f..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/IUIGroup.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 02d65f2c8a574a5e902b76c27a59ce24 -timeCreated: 1680511360 \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs deleted file mode 100644 index 6bf41f10..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; -using UnityEngine; - -namespace TEngine -{ - public sealed partial class UIModule : GameFrameworkModuleBase - { - [Serializable] - private sealed class UIGroup - { - [SerializeField] - private string m_Name = null; - - [SerializeField] - private int m_Depth = 0; - - public string Name - { - get - { - return m_Name; - } - } - - public int Depth - { - get - { - return m_Depth; - } - } - } - } -} diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs.meta deleted file mode 100644 index 3ab4b636..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIComponent.UIGroup.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e810c424ef3e4d4d819a04049d8c0cc9 -timeCreated: 1680511981 \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs deleted file mode 100644 index 59c124bf..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs +++ /dev/null @@ -1,16 +0,0 @@ -using UnityEngine; - -namespace TEngine -{ - /// - /// 界面组辅助器基类。 - /// - public abstract class UIGroupHelperBase : MonoBehaviour - { - /// - /// 设置界面组深度。 - /// - /// 界面组深度。 - public abstract void SetDepth(int depth); - } -} \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs.meta deleted file mode 100644 index 8fafc319..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIGroup/UIGroupHelperBase.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 448c98ed06ca49c1bf41283abf384005 -timeCreated: 1680516245 \ No newline at end of file diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIModule.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIModule.cs index 731cf86a..cb4f5050 100644 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIModule.cs +++ b/Assets/TEngine/Runtime/GameFramework/UI/UIModule.cs @@ -31,17 +31,8 @@ namespace TEngine [SerializeField] private string m_UIWindowHelperTypeName = "TEngine.DefaultUIWindowHelper"; - [SerializeField] private UIWindowHelperBase mCustomUIWindowHelper = null; - - [SerializeField] private string m_UIGroupHelperTypeName = "TEngine.DefaultUIGroupHelper"; - - [SerializeField] private UIGroupHelperBase m_CustomUIGroupHelper = null; - - [SerializeField] private UIGroup[] m_UIGroups = null; - private readonly List _stack = new List(100); - public const int GROUP_DEEP = 10000; public const int WINDOW_DEEP = 100; public const int WINDOW_HIDE_LAYER = 2; // Ignore Raycast public const int WINDOW_SHOW_LAYER = 5; // UI @@ -58,11 +49,6 @@ namespace TEngine /// public Camera UICamera => m_UICamera; - /// - /// 获取界面组数量。 - /// - public int UIGroupCount => m_UIGroups?.Length ?? 0; - private void Start() { RootModule rootModule = GameEntry.GetModule(); @@ -72,18 +58,6 @@ namespace TEngine return; } - UIWindowHelperBase uiWindowHelper = Helper.CreateHelper(m_UIWindowHelperTypeName, mCustomUIWindowHelper); - if (uiWindowHelper == null) - { - Log.Error("Can not create UI form helper."); - return; - } - - uiWindowHelper.name = "UI Form Helper"; - Transform transform = uiWindowHelper.transform; - transform.SetParent(this.transform); - transform.localScale = Vector3.one; - if (m_InstanceRoot == null) { m_InstanceRoot = new GameObject("UI Form Instances").transform; @@ -97,15 +71,6 @@ namespace TEngine m_InstanceRoot.gameObject.layer = LayerMask.NameToLayer("UI"); UIRootStatic = m_InstanceRoot; - - for (int i = 0; i < m_UIGroups.Length; i++) - { - if (!AddUIGroup(m_UIGroups[i].Name, m_UIGroups[i].Depth)) - { - Log.Warning("Add UI group '{0}' failure.", m_UIGroups[i].Name); - continue; - } - } } private void OnDestroy() @@ -127,32 +92,7 @@ namespace TEngine window.InternalUpdate(); } } - - /// - /// 增加界面组。 - /// - /// 界面组名称。 - /// 界面组深度。 - /// 是否增加界面组成功。 - public bool AddUIGroup(string uiGroupName, int depth) - { - UIGroupHelperBase uiGroupHelper = Helper.CreateHelper(m_UIGroupHelperTypeName, m_CustomUIGroupHelper, m_UIGroups.Length); - if (uiGroupHelper == null) - { - Log.Error("Can not create UI group helper."); - return false; - } - - uiGroupHelper.name = Utility.Text.Format("UI Group - {0}", uiGroupName); - uiGroupHelper.gameObject.layer = LayerMask.NameToLayer("UI"); - Transform transform = uiGroupHelper.transform; - transform.SetParent(m_InstanceRoot); - transform.localScale = Vector3.one; - transform.localPosition = Vector3.zero; - - return true; - } - + #region 设置安全区域 /// diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs b/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs deleted file mode 100644 index 08299f3a..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs +++ /dev/null @@ -1,33 +0,0 @@ -using UnityEngine; - -namespace TEngine -{ - /// - /// 界面辅助器基类。 - /// - public abstract class UIWindowHelperBase : MonoBehaviour - { - /// - /// 实例化界面。 - /// - /// 要实例化的界面资源。 - /// 实例化后的界面。 - public abstract object InstantiateUIWindow(object uiWindowAsset); - - /// - /// 创建界面。 - /// - /// 界面实例。 - /// 界面所属的界面组。 - /// 用户自定义数据。 - /// 界面。 - public abstract UIWindow CreateUIWindow(object uiWindowInstance, IUIGroup uiGroup, object userData); - - /// - /// 释放界面。 - /// - /// 要释放的界面资源。 - /// 要释放的界面实例。 - public abstract void ReleaseUIWindow(object uiWindowAsset, object uiWindowInstance); - } -} diff --git a/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs.meta b/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs.meta deleted file mode 100644 index 34eb860f..00000000 --- a/Assets/TEngine/Runtime/GameFramework/UI/UIWindowHelperBase.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f4ee8db1fd94cfdb66dc1062084ad30 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: