rework UnityDebugService initialization

This commit is contained in:
DCFApixels 2025-03-24 13:51:44 +08:00
parent 9bae371c25
commit 1620484297
2 changed files with 6 additions and 19 deletions

View File

@ -1,30 +1,15 @@
using DCFApixels.DragonECS.Unity.Internal;
using System;
using System.Reflection;
using Unity.Profiling;
using UnityEditor;
using UnityEngine;
#region [InitializeOnLoad]
#if UNITY_EDITOR
namespace DCFApixels.DragonECS
{
using UnityEditor;
[InitializeOnLoad]
public partial class UnityDebugService { }
}
#endif
#endregion
namespace DCFApixels.DragonECS
{
// Методы юнитевского Debug и ProfilerMarker потоко безопасны
public partial class UnityDebugService : DebugService
{
private ProfilerMarker[] _profilerMarkers = new ProfilerMarker[64];
static UnityDebugService()
{
Activate();
}
public static void Activate()
{
if (Instance.GetType() == typeof(UnityDebugService)) { return; }

View File

@ -109,8 +109,7 @@ namespace DCFApixels.DragonECS.Unity.Editors
static UnityEditorUtility()
{
const int PREWARMUP_LIST_SIZE = 64;
EcsWorld.ResetStaticState();
UnityDebugService.Activate();
OnLoad();
_integrationAssembly = typeof(UnityEditorUtility).Assembly;
@ -212,8 +211,11 @@ namespace DCFApixels.DragonECS.Unity.Editors
private static void OnLoad()
{
EcsWorld.ResetStaticState();
if (DebugService.IsNullOrDefault)
{
UnityDebugService.Activate();
}
}
internal static readonly Assembly _integrationAssembly;
internal static readonly Type[] _serializableTypes;