Procházet zdrojové kódy

补充元数据的dll配置到HybridCLRSettings.asset里面

tanghai před 3 roky
rodič
revize
6c3413852d

+ 4 - 16
Unity/Assets/Scripts/Editor/Plugins/HybridCLR/HybridCLREditor.cs

@@ -7,32 +7,20 @@ namespace ET
 {
     public static class HybridCLREditor
     {
-        private static readonly List<string> AotDlls = new()
-        {
-            "Unity.ThirdParty.dll", 
-            "Unity.Loader.dll", 
-            "Unity.Core.dll", 
-            "MongoDB.Bson.dll",
-            "CommandLine.dll",
-            "NLog.dll",
-            "mscorlib.dll",
-            "System.dll",
-            "System.Core.dll",
-        };
-        
         [MenuItem("HybridCLR/CopyAotDlls")]
         public static void CopyAotDll()
         {
             BuildTarget target = EditorUserBuildSettings.activeBuildTarget;
             string fromDir = Path.Combine(HybridCLRSettings.Instance.strippedAOTDllOutputRootDir, target.ToString());
             string toDir = "Assets/Bundles/AotDlls";
-            if (!Directory.Exists(toDir))
+            if (Directory.Exists(toDir))
             {
-                Directory.CreateDirectory(toDir);
+                Directory.Delete(toDir, true);
             }
+            Directory.CreateDirectory(toDir);
             AssetDatabase.Refresh();
             
-            foreach (string aotDll in AotDlls)
+            foreach (string aotDll in HybridCLRSettings.Instance.patchAOTAssemblies)
             {
                 File.Copy(Path.Combine(fromDir, aotDll), Path.Combine(toDir, $"{aotDll}.bytes"), true);
             }

+ 10 - 1
Unity/ProjectSettings/HybridCLRSettings.asset

@@ -25,7 +25,16 @@ MonoBehaviour:
   externalHotUpdateAssembliyDirs:
   - Temp/Bin/Debug
   strippedAOTDllOutputRootDir: HybridCLRData/AssembliesPostIl2CppStrip
-  patchAOTAssemblies: []
+  patchAOTAssemblies:
+  - Unity.ThirdParty.dll
+  - Unity.Loader.dll
+  - Unity.Core.dll
+  - MongoDB.Bson.dll
+  - CommandLine.dll
+  - NLog.dll
+  - mscorlib.dll
+  - System.dll
+  - System.Core.dll
   collectAssetReferenceTypes: 0
   outputLinkFile: Scripts/Loader/Plugins/HybridCLR/Generated/link.xml
   outputAOTGenericReferenceFile: Scripts/Loader/Plugins/HybridCLR/Generated/AOTGenericReferences.cs