111
All checks were successful
Plugin Library CI / publish (00.BuildOriginality) (push) Successful in 3s
Plugin Library CI / publish (00.StaryEvo) (push) Successful in 8s
Plugin Library CI / publish (00.StaryEvoTools) (push) Successful in 19s
Plugin Library CI / publish (01.HybridCLR) (push) Successful in 5s
Plugin Library CI / publish (02.InformationSave) (push) Successful in 3s
Plugin Library CI / publish (03.YooAsset) (push) Successful in 33s
Plugin Library CI / publish (04.AudioCore) (push) Successful in 3s
Plugin Library CI / publish (05.TableTextConversion) (push) Successful in 4s
Plugin Library CI / publish (06.UIFarme) (push) Successful in 16s
Plugin Library CI / publish (07.RKTools) (push) Successful in 7s
Plugin Library CI / publish (08.UniTask) (push) Successful in 3s
Plugin Library CI / publish (09.CodeChecker) (push) Successful in 16s
Plugin Library CI / publish (10.StoryEditor) (push) Successful in 2s
Plugin Library CI / publish (10.XNode) (push) Successful in 3s
Plugin Library CI / publish (11.PointCloudTools) (push) Successful in 2s
All checks were successful
Plugin Library CI / publish (00.BuildOriginality) (push) Successful in 3s
Plugin Library CI / publish (00.StaryEvo) (push) Successful in 8s
Plugin Library CI / publish (00.StaryEvoTools) (push) Successful in 19s
Plugin Library CI / publish (01.HybridCLR) (push) Successful in 5s
Plugin Library CI / publish (02.InformationSave) (push) Successful in 3s
Plugin Library CI / publish (03.YooAsset) (push) Successful in 33s
Plugin Library CI / publish (04.AudioCore) (push) Successful in 3s
Plugin Library CI / publish (05.TableTextConversion) (push) Successful in 4s
Plugin Library CI / publish (06.UIFarme) (push) Successful in 16s
Plugin Library CI / publish (07.RKTools) (push) Successful in 7s
Plugin Library CI / publish (08.UniTask) (push) Successful in 3s
Plugin Library CI / publish (09.CodeChecker) (push) Successful in 16s
Plugin Library CI / publish (10.StoryEditor) (push) Successful in 2s
Plugin Library CI / publish (10.XNode) (push) Successful in 3s
Plugin Library CI / publish (11.PointCloudTools) (push) Successful in 2s
This commit is contained in:
@@ -16,6 +16,10 @@ namespace Stary.Evo
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[Sirenix.OdinInspector.ReadOnly] public string domain;
|
[Sirenix.OdinInspector.ReadOnly] public string domain;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 程序集
|
||||||
|
/// </summary>
|
||||||
|
[Sirenix.OdinInspector.ReadOnly] public string assemblyName;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 入口命名空间
|
/// 入口命名空间
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "com.staryevo.main",
|
"name": "com.staryevo.main",
|
||||||
"version": "2.1.12",
|
"version": "2.1.13",
|
||||||
"displayName": "00.StaryEvo",
|
"displayName": "00.StaryEvo",
|
||||||
"description": "This is an Framework package(后台服务器版本,端口9527)",
|
"description": "This is an Framework package(后台服务器版本,端口9527)",
|
||||||
"unity": "2021.3",
|
"unity": "2021.3",
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
#if !UNITY_WEBGL
|
||||||
using HybridCLR.Editor.Commands;
|
using HybridCLR.Editor.Commands;
|
||||||
|
#endif
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Sirenix.OdinInspector;
|
using Sirenix.OdinInspector;
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
@@ -38,10 +41,12 @@ namespace Stary.Evo.Editor
|
|||||||
/// <param name="oneKeyBuildEntities"></param>
|
/// <param name="oneKeyBuildEntities"></param>
|
||||||
public static void OneClickMark(List<OneKeyBuildEntity> oneKeyBuildEntities)
|
public static void OneClickMark(List<OneKeyBuildEntity> oneKeyBuildEntities)
|
||||||
{
|
{
|
||||||
|
#if !UNITY_WEBGL
|
||||||
//打dll
|
//打dll
|
||||||
CompileDllCommand.CompileDllActiveBuildTarget();
|
CompileDllCommand.CompileDllActiveBuildTarget();
|
||||||
//拷贝dll
|
//拷贝dll
|
||||||
MarkAdressable.AddHotfixAddressableDllAll(oneKeyBuildEntities);
|
MarkAdressable.AddHotfixAddressableDllAll(oneKeyBuildEntities);
|
||||||
|
#endif
|
||||||
//标记全部资源
|
//标记全部资源
|
||||||
MarkAdressable.AddMarkAll(oneKeyBuildEntities);
|
MarkAdressable.AddMarkAll(oneKeyBuildEntities);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,8 +11,6 @@ using System.Collections.Generic;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using System.IO.Compression;
|
using System.IO.Compression;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using HybridCLR.Editor;
|
|
||||||
using HybridCLR.Editor.Commands;
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using Sirenix.OdinInspector;
|
using Sirenix.OdinInspector;
|
||||||
|
|||||||
@@ -2,8 +2,10 @@ using System;
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
#if !UNITY_WEBGL
|
||||||
using HybridCLR.Editor;
|
using HybridCLR.Editor;
|
||||||
using HybridCLR.Editor.Settings;
|
using HybridCLR.Editor.Settings;
|
||||||
|
#endif
|
||||||
using Sirenix.OdinInspector;
|
using Sirenix.OdinInspector;
|
||||||
using Sirenix.OdinInspector.Editor;
|
using Sirenix.OdinInspector.Editor;
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
@@ -174,15 +176,6 @@ namespace Stary.Evo.Editor
|
|||||||
domainClassName = domainClassName.Replace('.', '_');
|
domainClassName = domainClassName.Replace('.', '_');
|
||||||
string architectureClassName = $"{domain}Architecture";
|
string architectureClassName = $"{domain}Architecture";
|
||||||
architectureClassName = architectureClassName.Replace('.', '_');
|
architectureClassName = architectureClassName.Replace('.', '_');
|
||||||
//模块配置资源
|
|
||||||
DomainConfig moduleConfig = CreateInstance<DomainConfig>();
|
|
||||||
moduleConfig.domain = domain;
|
|
||||||
moduleConfig.className = domainClassName;
|
|
||||||
moduleConfig.mainPrefab = "Prefabs_" + gameObj.name;
|
|
||||||
moduleConfig.@namespace = domain;
|
|
||||||
AssetDatabase.CreateAsset(moduleConfig, $"Assets/Domain/{domain}/AddressableRes/Config/DomainConfig.asset");
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
//编辑器配置资源
|
//编辑器配置资源
|
||||||
BuildAssetDataSetting buildAssetDataSetting = CreateInstance<BuildAssetDataSetting>();
|
BuildAssetDataSetting buildAssetDataSetting = CreateInstance<BuildAssetDataSetting>();
|
||||||
@@ -196,6 +189,17 @@ namespace Stary.Evo.Editor
|
|||||||
string configPath = $"Assets/Domain/{domain}/HotUpdate/{hotfixDomain}.asmdef";
|
string configPath = $"Assets/Domain/{domain}/HotUpdate/{hotfixDomain}.asmdef";
|
||||||
AssemblyDefinitionAsset assemblyDefinitionAsset =
|
AssemblyDefinitionAsset assemblyDefinitionAsset =
|
||||||
AssetDatabase.LoadAssetAtPath<AssemblyDefinitionAsset>(configPath);
|
AssetDatabase.LoadAssetAtPath<AssemblyDefinitionAsset>(configPath);
|
||||||
|
|
||||||
|
//模块配置资源
|
||||||
|
DomainConfig moduleConfig = CreateInstance<DomainConfig>();
|
||||||
|
moduleConfig.domain = domain;
|
||||||
|
moduleConfig.assemblyName = assemblyDefinitionAsset.name;
|
||||||
|
moduleConfig.className = domainClassName;
|
||||||
|
moduleConfig.mainPrefab = "Prefabs_" + gameObj.name;
|
||||||
|
moduleConfig.@namespace = domain;
|
||||||
|
AssetDatabase.CreateAsset(moduleConfig, $"Assets/Domain/{domain}/AddressableRes/Config/DomainConfig.asset");
|
||||||
|
//
|
||||||
|
#if !UNITY_WEBGL
|
||||||
if (domain != "Main")
|
if (domain != "Main")
|
||||||
{
|
{
|
||||||
// 将程序集定义添加到 HybridCLR 热更列表
|
// 将程序集定义添加到 HybridCLR 热更列表
|
||||||
@@ -220,6 +224,7 @@ namespace Stary.Evo.Editor
|
|||||||
HybridCLRSettings.Instance.hotUpdateAssemblyDefinitions = assemblies.ToArray();
|
HybridCLRSettings.Instance.hotUpdateAssemblyDefinitions = assemblies.ToArray();
|
||||||
HybridCLRSettings.Save();
|
HybridCLRSettings.Save();
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
AssetDatabase.SaveAssets();
|
AssetDatabase.SaveAssets();
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using HybridCLR.Editor.Commands;
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
using Sirenix.OdinInspector;
|
using Sirenix.OdinInspector;
|
||||||
using Sirenix.OdinInspector.Editor;
|
using Sirenix.OdinInspector.Editor;
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
|
|||||||
@@ -2,8 +2,9 @@ using System;
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
#if !UNITY_WEBGL
|
||||||
using HybridCLR.Editor;
|
using HybridCLR.Editor;
|
||||||
using HybridCLR.Editor.Commands;
|
#endif
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
using UnityEditor.U2D;
|
using UnityEditor.U2D;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@@ -34,7 +35,7 @@ namespace Stary.Evo.Editor
|
|||||||
{
|
{
|
||||||
get { return Application.dataPath + "/Domain"; }
|
get { return Application.dataPath + "/Domain"; }
|
||||||
}
|
}
|
||||||
|
#if !UNITY_WEBGL
|
||||||
public static void AddHotfixAddressableDll()
|
public static void AddHotfixAddressableDll()
|
||||||
{
|
{
|
||||||
CopyDllHotUpdateAssembly(BuildAssetWindow.GetBuildPackageName(),
|
CopyDllHotUpdateAssembly(BuildAssetWindow.GetBuildPackageName(),
|
||||||
@@ -104,7 +105,7 @@ namespace Stary.Evo.Editor
|
|||||||
FileUtility.Copy(hotfixDllPath, hotfixDllPathTarget, true);
|
FileUtility.Copy(hotfixDllPath, hotfixDllPathTarget, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
public static void AddMarkAll(List<OneKeyBuildEntity> oneKeyBUildEntities)
|
public static void AddMarkAll(List<OneKeyBuildEntity> oneKeyBUildEntities)
|
||||||
{
|
{
|
||||||
foreach (var oneKeyBUildEntity in oneKeyBUildEntities)
|
foreach (var oneKeyBUildEntity in oneKeyBUildEntities)
|
||||||
|
|||||||
@@ -5,18 +5,17 @@
|
|||||||
"com.staryevo.tools.runtime",
|
"com.staryevo.tools.runtime",
|
||||||
"com.stary.evo.editor",
|
"com.stary.evo.editor",
|
||||||
"com.stary.evo.runtime",
|
"com.stary.evo.runtime",
|
||||||
"HybridCLR.Runtime",
|
|
||||||
"HybridCLR.Editor",
|
|
||||||
"com.stary.buildoriginality.editor",
|
"com.stary.buildoriginality.editor",
|
||||||
"com.stary.buildoriginality.runtime",
|
"com.stary.buildoriginality.runtime",
|
||||||
"YooAsset",
|
"YooAsset",
|
||||||
"YooAsset.Editor",
|
"YooAsset.Editor",
|
||||||
"com.audiocore.runtime",
|
"com.audiocore.runtime",
|
||||||
"DOTween.Modules",
|
"DOTween.Modules",
|
||||||
"ImmersalSDK",
|
|
||||||
"Informationsave.runtime",
|
"Informationsave.runtime",
|
||||||
"UniTask",
|
"UniTask",
|
||||||
"Unity.ScriptableBuildPipeline.Editor"
|
"Unity.ScriptableBuildPipeline.Editor",
|
||||||
|
"HybridCLR.Editor",
|
||||||
|
"HybridCLR.Runtime"
|
||||||
],
|
],
|
||||||
"includePlatforms": [
|
"includePlatforms": [
|
||||||
"Editor"
|
"Editor"
|
||||||
|
|||||||
@@ -3,7 +3,9 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using Cysharp.Threading.Tasks;
|
using Cysharp.Threading.Tasks;
|
||||||
|
#if !UNITY_WEBGL
|
||||||
using HybridCLR;
|
using HybridCLR;
|
||||||
|
#endif
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using YooAsset;
|
using YooAsset;
|
||||||
|
|
||||||
@@ -230,11 +232,6 @@ namespace Stary.Evo
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override UniTask OnEnterAsync()
|
|
||||||
{
|
|
||||||
return UniTask.CompletedTask;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Type IsAssetLoaded(string assemblyName)
|
private Type IsAssetLoaded(string assemblyName)
|
||||||
{
|
{
|
||||||
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||||
@@ -253,26 +250,9 @@ namespace Stary.Evo
|
|||||||
|
|
||||||
#region 补充元数据
|
#region 补充元数据
|
||||||
|
|
||||||
// //补充元数据dll的列表
|
|
||||||
// //通过RuntimeApi.LoadMetadataForAOTAssembly()函数来补充AOT泛型的原始元数据
|
|
||||||
// private List<string> AOTMetaAssemblyFiles { get; } =new()
|
|
||||||
// {
|
|
||||||
// "Android_mscorlib.dll", "Android_System.dll", "Android_System.Core.dll",
|
|
||||||
// };
|
|
||||||
|
|
||||||
private readonly List<TextAsset> _sAssetDatas = new();
|
private readonly List<TextAsset> _sAssetDatas = new();
|
||||||
|
|
||||||
|
|
||||||
// public byte[] ReadBytesFromStreamingAssets(string dllName)
|
|
||||||
// {
|
|
||||||
// if (_sAssetDatas.ContainsKey(dllName))
|
|
||||||
// {
|
|
||||||
// return _sAssetDatas[dllName].bytes;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// return Array.Empty<byte>();
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 为aot assembly加载原始metadata, 这个代码放aot或者热更新都行。
|
/// 为aot assembly加载原始metadata, 这个代码放aot或者热更新都行。
|
||||||
@@ -280,6 +260,7 @@ namespace Stary.Evo
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void LoadMetadataForAOTAssemblies()
|
private void LoadMetadataForAOTAssemblies()
|
||||||
{
|
{
|
||||||
|
#if !UNITY_WEBGL
|
||||||
var mode = HomologousImageMode.SuperSet;
|
var mode = HomologousImageMode.SuperSet;
|
||||||
// foreach (var aotDllName in AOTGenericReferences.PatchedAOTAssemblyList)
|
// foreach (var aotDllName in AOTGenericReferences.PatchedAOTAssemblyList)
|
||||||
foreach (var aotDll in _sAssetDatas)
|
foreach (var aotDll in _sAssetDatas)
|
||||||
@@ -300,6 +281,7 @@ namespace Stary.Evo
|
|||||||
|
|
||||||
Debug.Log($"UnityEvo:【补元】{aotDll.name} 加载结果: {err} 字节数: {dllBytes.Length}");
|
Debug.Log($"UnityEvo:【补元】{aotDll.name} 加载结果: {err} 字节数: {dllBytes.Length}");
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|||||||
@@ -20,7 +20,14 @@ namespace Stary.Evo
|
|||||||
if (AppConfig.DeveloperMode)
|
if (AppConfig.DeveloperMode)
|
||||||
{
|
{
|
||||||
domainConfig = param1 as DomainConfig;
|
domainConfig = param1 as DomainConfig;
|
||||||
|
#if UNITY_WEBGL
|
||||||
|
string typeName = $"{domainConfig.@namespace}.{domainConfig.className},{domainConfig.assemblyName}"; // 完整命名空间
|
||||||
|
Type type = Type.GetType(typeName);
|
||||||
|
#else
|
||||||
Type type = param2 as Type;
|
Type type = param2 as Type;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
GameObject mainPrefab = null;
|
GameObject mainPrefab = null;
|
||||||
|
|
||||||
|
|||||||
@@ -5,12 +5,11 @@
|
|||||||
"UniTask",
|
"UniTask",
|
||||||
"com.audiocore.runtime",
|
"com.audiocore.runtime",
|
||||||
"com.stary.evo.runtime",
|
"com.stary.evo.runtime",
|
||||||
"HybridCLR.Runtime",
|
|
||||||
"ImmersalSDK",
|
|
||||||
"Informationsave.runtime",
|
"Informationsave.runtime",
|
||||||
"DOTween.Modules",
|
"DOTween.Modules",
|
||||||
"com.stary.buildoriginality.runtime",
|
"com.stary.buildoriginality.runtime",
|
||||||
"YooAsset"
|
"YooAsset",
|
||||||
|
"HybridCLR.Runtime"
|
||||||
],
|
],
|
||||||
"includePlatforms": [],
|
"includePlatforms": [],
|
||||||
"excludePlatforms": [],
|
"excludePlatforms": [],
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "com.staryevo.tools",
|
"name": "com.staryevo.tools",
|
||||||
"version": "1.4.13",
|
"version": "1.4.14",
|
||||||
"displayName": "00.StaryEvo.Tools",
|
"displayName": "00.StaryEvo.Tools",
|
||||||
"description": "This is an Framework package(后台服务器版本,端口9527)",
|
"description": "This is an Framework package(后台服务器版本,端口9527)",
|
||||||
"unity": "2021.3",
|
"unity": "2021.3",
|
||||||
|
|||||||
Reference in New Issue
Block a user