Kaynağa Gözat

增加dotnetcore编译工程

tanghai 1 yıl önce
ebeveyn
işleme
89810da644
25 değiştirilmiş dosya ile 334 ekleme ve 445 silme
  1. 4 3
      DotNet/App/ET.App.csproj
  2. 2 2
      DotNet/App/Program.cs
  3. 0 60
      DotNet/Hotfix/DotNet.Hotfix.csproj
  4. 51 0
      DotNet/Hotfix/ET.Hotfix.csproj
  5. 0 64
      DotNet/Model/DotNet.Model.csproj
  6. 0 6
      DotNet/Model/DotNet.Model.csproj.user
  7. 66 0
      DotNet/Model/ET.Model.csproj
  8. 105 90
      ET.sln
  9. 1 1
      Share/Tool/Share.Tool.csproj
  10. 18 8
      Unity/Packages/com.et.core/DotNet~/ET.Core.csproj
  11. 1 1
      Unity/Packages/com.et.core/Runtime~/Model/Share/Entry.cs
  12. 0 13
      Unity/Packages/com.et.core/Runtime~/Model/Share/MemoryPackRegister.cs
  13. 38 0
      Unity/Packages/com.et.dotrecast/DotNet~/ET.DotRecast.csproj
  14. 3 5
      Unity/Packages/com.et.loader/DotNet~/CodeLoader.cs
  15. 0 0
      Unity/Packages/com.et.loader/DotNet~/ConfigLoaderInvoker.cs
  16. 7 10
      Unity/Packages/com.et.loader/DotNet~/ET.Loader.csproj
  17. 0 0
      Unity/Packages/com.et.loader/DotNet~/Init.cs
  18. 4 19
      Unity/Packages/com.et.mathematics/Runtime~/ET.Mathematics.csproj
  19. 0 0
      Unity/Packages/com.et.mathematics/Runtime~/Unity.Mathematics/PropertyAttribute.cs
  20. 19 0
      Unity/Packages/com.et.mathematics/package.json
  21. 7 0
      Unity/Packages/com.et.mathematics/package.json.meta
  22. 0 39
      Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MailBoxType_OrderedMessageHandler.cs
  23. 0 20
      Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MailBoxType_UnOrderedMessageHandler.cs
  24. 0 104
      Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MessageHandler.cs
  25. 8 0
      Unity/Packages/packages-lock.json

+ 4 - 3
DotNet/App/DotNet.App.csproj → DotNet/App/ET.App.csproj

@@ -5,7 +5,7 @@
     <TargetFramework>net8.0</TargetFramework>
     <TargetFramework>net8.0</TargetFramework>
     <RootNamespace>ET</RootNamespace>
     <RootNamespace>ET</RootNamespace>
     <LangVersion>12</LangVersion>
     <LangVersion>12</LangVersion>
-    <AssemblyName>App</AssemblyName>
+    <AssemblyName>ET.App</AssemblyName>
   </PropertyGroup>
   </PropertyGroup>
 
 
   <PropertyGroup>
   <PropertyGroup>
@@ -28,7 +28,8 @@
   </PropertyGroup>
   </PropertyGroup>
 
 
   <ItemGroup>
   <ItemGroup>
-    <ProjectReference Include="..\Loader\DotNet.Loader.csproj" />
-    <ProjectReference Include="..\Model\DotNet.Model.csproj" />
+    <ProjectReference Include="..\..\Unity\Packages\com.et.core\DotNet~\ET.Core.csproj" />
+    <ProjectReference Include="..\..\Unity\Packages\com.et.loader\DotNet~\ET.Loader.csproj" />
+    <ProjectReference Include="..\Model\ET.Model.csproj" />
   </ItemGroup>
   </ItemGroup>
 </Project>
 </Project>

+ 2 - 2
DotNet/App/Program.cs

@@ -8,8 +8,8 @@ namespace ET
         public static void Main()
         public static void Main()
         {
         {
             //这里大家看着可能比较困惑,为什么要绕一大圈呢,之前这里直接调用Model层,现在却要在CoderLoader中获取Model的程序集找到Entry入口再调用
             //这里大家看着可能比较困惑,为什么要绕一大圈呢,之前这里直接调用Model层,现在却要在CoderLoader中获取Model的程序集找到Entry入口再调用
-            //原因是,之前DotNet.App直接依赖Model,但是在客户端,之前的Mono却不依赖Model。这导致前端跟后端程序集依赖不太一样
-            //所以这次加了个Loader的程序集,客户端的Mono程序集也改成Loader,这样前后端Model都引用Loader,Loader通过反射去调用Model的Entry。
+            //原因是,之前ET.App直接依赖Model,但是在客户端,之前的Loader却不依赖Model。这导致前端跟后端程序集依赖不太一样
+            //这样前后端Model都引用Loader,Loader通过反射去调用Model的Entry。
             //这样前后端的程序集依赖就保持了一致。这里调用了Entry.Init()是为了防止dotnet裁剪Model的程序集,毕竟如果App没有调用model,那么dotnet认为
             //这样前后端的程序集依赖就保持了一致。这里调用了Entry.Init()是为了防止dotnet裁剪Model的程序集,毕竟如果App没有调用model,那么dotnet认为
             //model并没有用到,就不会加载,结果会导致CodeLoader反射调用model失败。
             //model并没有用到,就不会加载,结果会导致CodeLoader反射调用model失败。
             //客户端服务端不热更不共享的组件可以写到Loader中,比如表现层需要一个组件不需要热更,可以写在Loader中,这样性能更高。如果客户端跟服务端共享的并且不需要热更的
             //客户端服务端不热更不共享的组件可以写到Loader中,比如表现层需要一个组件不需要热更,可以写在Loader中,这样性能更高。如果客户端跟服务端共享的并且不需要热更的

+ 0 - 60
DotNet/Hotfix/DotNet.Hotfix.csproj

@@ -1,60 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-    <PropertyGroup>
-        <TargetFramework>net8.0</TargetFramework> 
-        <RootNamespace>ET</RootNamespace>
-        <LangVersion>12</LangVersion>
-        <AssemblyName>Hotfix</AssemblyName>
-    </PropertyGroup>
-    <PropertyGroup>
-        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-        <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
-    </PropertyGroup>
-    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
-        <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath> 
-        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
-    </PropertyGroup>
-    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
-        <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath>
-        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-        <Optimize>false</Optimize>
-        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
-        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
-    </PropertyGroup>
-    <ItemGroup>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Hotfix~\Share\**\*.cs">
-            <Link>Share/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Hotfix~\Client\**\*.cs">
-            <Link>Client/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Hotfix~\Server\**\*.cs">
-            <Link>Server/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Hotfix~\Share\**\*.cs">
-            <Link>Share/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Hotfix~\Client\**\*.cs">
-            <Link>Client/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Hotfix~\Server\**\*.cs">
-            <Link>Server/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-        
-    </ItemGroup>
-    <ItemGroup>
-        <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\..\Share\Share.SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\Loader\DotNet.Loader.csproj" />
-        <ProjectReference Include="..\Model\DotNet.Model.csproj" />
-    </ItemGroup>
-
-</Project>

+ 51 - 0
DotNet/Hotfix/ET.Hotfix.csproj

@@ -0,0 +1,51 @@
+<Project Sdk="Microsoft.NET.Sdk">
+    <PropertyGroup>
+        <TargetFramework>net8.0</TargetFramework> 
+        <RootNamespace>ET</RootNamespace>
+        <LangVersion>12</LangVersion>
+        <AssemblyName>ET.Hotfix</AssemblyName>
+    </PropertyGroup>
+    <PropertyGroup>
+        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
+        <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
+    </PropertyGroup>
+    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
+        <DefineConstants>DOTNET</DefineConstants>
+        <OutputPath>..\..\Bin\</OutputPath> 
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
+    </PropertyGroup>
+    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
+        <DefineConstants>DOTNET</DefineConstants>
+        <OutputPath>..\..\Bin\</OutputPath>
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <Optimize>false</Optimize>
+        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
+    </PropertyGroup>
+    <ItemGroup>
+
+        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Runtime~\Hotfix\Share\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Runtime~\Hotfix\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Packages\com.et.*\Runtime~\Hotfix\Share\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Packages\com.et.*\Runtime~\Hotfix\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+        
+    </ItemGroup>
+    <ItemGroup>
+        <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
+        <ProjectReference Include="..\..\Share\SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
+        <ProjectReference Include="..\Model\ET.Model.csproj" />
+    </ItemGroup>
+
+</Project>

+ 0 - 64
DotNet/Model/DotNet.Model.csproj

@@ -1,64 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-    <PropertyGroup>
-        <TargetFramework>net8.0</TargetFramework>
-        <RootNamespace>ET</RootNamespace>
-        <LangVersion>12</LangVersion>
-        <AssemblyName>Model</AssemblyName>
-    </PropertyGroup>
-    <PropertyGroup>
-        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
-        <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
-    </PropertyGroup>
-    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
-        <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath> 
-        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
-        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-        <Optimize>false</Optimize>
-        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
-    </PropertyGroup>
-    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> 
-        <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath>
-        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
-        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-        <Optimize>true</Optimize>
-        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
-    </PropertyGroup>
-    <ItemGroup>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Model~\Share\**\*.cs">
-            <Link>Share/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Model~\Client\**\*.cs">
-            <Link>Client/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Scripts\Model~\Server\**\*.cs">
-            <Link>Server/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Model~\Share\**\*.cs">
-            <Link>Share/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Model~\Client\**\*.cs">
-            <Link>Client/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\Model~\Server\**\*.cs">
-            <Link>Server/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Packages\com.et.*\Scripts\CodeMode~\Server\**\*.cs"><Link>CodeMode/$([System.String]::new(%(RecursiveDir)).Substring(7, $([System.String]::new(%(RecursiveDir)).Indexof("Scripts"))).Replace("Scripts", ""))/%(FileName)%(Extension)</Link></Compile>
-
-        <Compile Include="..\..\Generate\Server\**\*.cs"><Link>Generate\%(RecursiveDir)%(FileName)%(Extension)</Link></Compile>
-        
-    </ItemGroup> 
-    <ItemGroup> 
-        <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\..\Share\Share.SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\Core\DotNet.Core.csproj" />
-    </ItemGroup> 
-</Project>

+ 0 - 6
DotNet/Model/DotNet.Model.csproj.user

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <ShowAllFiles>false</ShowAllFiles>
-  </PropertyGroup>
-</Project>

+ 66 - 0
DotNet/Model/ET.Model.csproj

@@ -0,0 +1,66 @@
+<Project Sdk="Microsoft.NET.Sdk">
+    <PropertyGroup>
+        <TargetFramework>net8.0</TargetFramework>
+        <RootNamespace>ET</RootNamespace>
+        <LangVersion>12</LangVersion>
+        <AssemblyName>ET.Model</AssemblyName>
+    </PropertyGroup>
+    <PropertyGroup>
+        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
+        <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
+    </PropertyGroup>
+    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
+        <DefineConstants>DOTNET</DefineConstants>
+        <OutputPath>..\..\Bin\</OutputPath> 
+        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <Optimize>false</Optimize>
+        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
+    </PropertyGroup>
+    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> 
+        <DefineConstants>DOTNET</DefineConstants>
+        <OutputPath>..\..\Bin\</OutputPath>
+        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <Optimize>true</Optimize>
+        <NoWarn>0169,0649,3021,8981,CS9193,CS9192</NoWarn>
+    </PropertyGroup>
+    <ItemGroup>
+
+        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Runtime~\Model\Share\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Runtime~\Model\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Library\PackageCache\com.et.*\Runtime~\CodeMode\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Packages\com.et.*\Runtime~\Model\Share\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Packages\com.et.*\Runtime~\Model\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Unity\Packages\com.et.*\Runtime~\CodeMode\Server\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+
+        <Compile Include="..\..\Generate\*\Server\**\*.cs">
+            <Link>Generate\%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+        
+    </ItemGroup> 
+    <ItemGroup> 
+        <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
+        <ProjectReference Include="..\..\Share\SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
+        <ProjectReference Include="..\..\Unity\Packages\com.et.core\DotNet~\ET.Core.csproj" />
+        <ProjectReference Include="..\..\Unity\Packages\com.et.dotrecast\DotNet~\ET.DotRecast.csproj" />
+        <ProjectReference Include="..\..\Unity\Packages\com.et.mathematics\Runtime~\ET.Mathematics.csproj" />
+    </ItemGroup> 
+</Project>

+ 105 - 90
ET.sln

@@ -7,24 +7,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Unity", "Unity", "{914C77C9
 EndProject
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DotNet", "DotNet", "{46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}"
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DotNet", "DotNet", "{46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}"
 EndProject
 EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNet.App", "DotNet\App\DotNet.App.csproj", "{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNet.Core", "DotNet\Core\DotNet.Core.csproj", "{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNet.Hotfix", "DotNet\Hotfix\DotNet.Hotfix.csproj", "{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNet.Model", "DotNet\Model\DotNet.Model.csproj", "{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}"
-EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Share", "Share", "{1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}"
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Share", "Share", "{1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}"
 EndProject
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Share.Analyzer", "Share\Analyzer\Share.Analyzer.csproj", "{FCB2EF97-BA34-49F7-B859-68E1AC98877E}"
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Share.Analyzer", "Share\Analyzer\Share.Analyzer.csproj", "{FCB2EF97-BA34-49F7-B859-68E1AC98877E}"
 EndProject
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Share.Tool", "Share\Tool\Share.Tool.csproj", "{1D028A2B-515C-49E2-923B-094CBD89BE5A}"
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Share.Tool", "Share\Tool\Share.Tool.csproj", "{1D028A2B-515C-49E2-923B-094CBD89BE5A}"
 EndProject
 EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNet.Loader", "DotNet\Loader\DotNet.Loader.csproj", "{1D5E890A-C9D5-45DF-B098-73DBE39EB311}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotNet.ThirdParty", "DotNet\ThirdParty\DotNet.ThirdParty.csproj", "{36C32B5A-D491-4AD9-8E46-C8FB33880952}"
-EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Share.SourceGenerator", "Share\SourceGenerator\Share.SourceGenerator.csproj", "{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}"
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Share.SourceGenerator", "Share\SourceGenerator\Share.SourceGenerator.csproj", "{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}"
 EndProject
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Core", "Unity\ET.Core.csproj", "{357275F9-23B5-ED06-A723-291680D452AA}"
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Core", "Unity\ET.Core.csproj", "{357275F9-23B5-ED06-A723-291680D452AA}"
@@ -47,6 +35,20 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.HotfixView", "Unity\ET.H
 EndProject
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.ModelView", "Unity\ET.ModelView.csproj", "{18FC8021-2861-97B8-C06F-E793AD2027C2}"
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.ModelView", "Unity\ET.ModelView.csproj", "{18FC8021-2861-97B8-C06F-E793AD2027C2}"
 EndProject
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Mathematics", "Unity\Packages\com.et.mathematics\Runtime~\ET.Mathematics.csproj", "{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Model", "DotNet\Model\ET.Model.csproj", "{A3B427C3-E901-4EF6-A426-8CB34E92BF67}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Hotfix", "DotNet\Hotfix\ET.Hotfix.csproj", "{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.App", "DotNet\App\ET.App.csproj", "{CE23DAC2-A1EF-4AF3-878E-C507D252276D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Core", "Unity\Packages\com.et.core\DotNet~\ET.Core.csproj", "{20C76912-A132-476D-95BA-BBB5955A819C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.Loader", "Unity\Packages\com.et.loader\DotNet~\ET.Loader.csproj", "{93979EBC-A9EC-41B8-A440-156F23775084}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ET.DotRecast", "Unity\Packages\com.et.dotrecast\DotNet~\ET.DotRecast.csproj", "{10F05479-5561-4711-BF62-C3951551B51D}"
+EndProject
 Global
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
 		Debug|Any CPU = Debug|Any CPU
@@ -57,54 +59,6 @@ Global
 		Release|x86 = Release|x86
 		Release|x86 = Release|x86
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|x64.Build.0 = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Debug|x86.Build.0 = Debug|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|Any CPU.Build.0 = Release|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|x64.ActiveCfg = Release|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|x64.Build.0 = Release|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|x86.ActiveCfg = Release|Any CPU
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB}.Release|x86.Build.0 = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|x64.Build.0 = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Debug|x86.Build.0 = Debug|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|Any CPU.Build.0 = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|x64.ActiveCfg = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|x64.Build.0 = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|x86.ActiveCfg = Release|Any CPU
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D}.Release|x86.Build.0 = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|x64.Build.0 = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Debug|x86.Build.0 = Debug|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|Any CPU.Build.0 = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|x64.ActiveCfg = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|x64.Build.0 = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|x86.ActiveCfg = Release|Any CPU
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7}.Release|x86.Build.0 = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|x64.Build.0 = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Debug|x86.Build.0 = Debug|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|x64.ActiveCfg = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|x64.Build.0 = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|x86.ActiveCfg = Release|Any CPU
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE}.Release|x86.Build.0 = Release|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|x64.ActiveCfg = Debug|Any CPU
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -129,30 +83,6 @@ Global
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x64.Build.0 = Release|Any CPU
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x64.Build.0 = Release|Any CPU
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x86.ActiveCfg = Release|Any CPU
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x86.ActiveCfg = Release|Any CPU
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x86.Build.0 = Release|Any CPU
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A}.Release|x86.Build.0 = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|x64.Build.0 = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Debug|x86.Build.0 = Debug|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|Any CPU.Build.0 = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|x64.ActiveCfg = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|x64.Build.0 = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|x86.ActiveCfg = Release|Any CPU
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311}.Release|x86.Build.0 = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|x64.Build.0 = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Debug|x86.Build.0 = Debug|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|Any CPU.Build.0 = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|x64.ActiveCfg = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|x64.Build.0 = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|x86.ActiveCfg = Release|Any CPU
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952}.Release|x86.Build.0 = Release|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|x64.ActiveCfg = Debug|Any CPU
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -285,19 +215,97 @@ Global
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x64.Build.0 = Debug|Any CPU
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x64.Build.0 = Debug|Any CPU
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x86.ActiveCfg = Debug|Any CPU
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x86.ActiveCfg = Debug|Any CPU
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x86.Build.0 = Debug|Any CPU
 		{18FC8021-2861-97B8-C06F-E793AD2027C2}.Release|x86.Build.0 = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|x64.Build.0 = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Debug|x86.Build.0 = Debug|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|Any CPU.Build.0 = Release|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|x64.ActiveCfg = Release|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|x64.Build.0 = Release|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|x86.ActiveCfg = Release|Any CPU
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2}.Release|x86.Build.0 = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|x64.Build.0 = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Debug|x86.Build.0 = Debug|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|Any CPU.Build.0 = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|x64.ActiveCfg = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|x64.Build.0 = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|x86.ActiveCfg = Release|Any CPU
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67}.Release|x86.Build.0 = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|x64.Build.0 = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Debug|x86.Build.0 = Debug|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|x64.ActiveCfg = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|x64.Build.0 = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|x86.ActiveCfg = Release|Any CPU
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF}.Release|x86.Build.0 = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|x64.Build.0 = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Debug|x86.Build.0 = Debug|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|Any CPU.Build.0 = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|x64.ActiveCfg = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|x64.Build.0 = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|x86.ActiveCfg = Release|Any CPU
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D}.Release|x86.Build.0 = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|x64.Build.0 = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Debug|x86.Build.0 = Debug|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|x64.ActiveCfg = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|x64.Build.0 = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|x86.ActiveCfg = Release|Any CPU
+		{20C76912-A132-476D-95BA-BBB5955A819C}.Release|x86.Build.0 = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|x64.Build.0 = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Debug|x86.Build.0 = Debug|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|Any CPU.Build.0 = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|x64.ActiveCfg = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|x64.Build.0 = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|x86.ActiveCfg = Release|Any CPU
+		{93979EBC-A9EC-41B8-A440-156F23775084}.Release|x86.Build.0 = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|x64.Build.0 = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Debug|x86.Build.0 = Debug|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|Any CPU.Build.0 = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|x64.ActiveCfg = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|x64.Build.0 = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|x86.ActiveCfg = Release|Any CPU
+		{10F05479-5561-4711-BF62-C3951551B51D}.Release|x86.Build.0 = Release|Any CPU
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
 		HideSolutionNode = FALSE
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(NestedProjects) = preSolution
 	GlobalSection(NestedProjects) = preSolution
-		{CCF5D7E3-D5C6-4DE6-BB2D-1A931602F1AB} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
-		{20CA1FD3-A23B-4F12-ADA5-C3B759814F9D} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
-		{1059524B-9F01-4C3E-8A7C-6BBDD1D174C7} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
-		{6AFC109E-85DE-4A14-9C81-95D93C3F90AE} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
 		{FCB2EF97-BA34-49F7-B859-68E1AC98877E} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
 		{1D028A2B-515C-49E2-923B-094CBD89BE5A} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
-		{1D5E890A-C9D5-45DF-B098-73DBE39EB311} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
-		{36C32B5A-D491-4AD9-8E46-C8FB33880952} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
 		{7053CEF4-1559-47C5-80FF-FBE7B02E50E1} = {1272AF7B-A962-4BA4-8A9C-FFA7E131A0AC}
 		{357275F9-23B5-ED06-A723-291680D452AA} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{357275F9-23B5-ED06-A723-291680D452AA} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{3A94C6B6-82E5-A1A2-A312-9D8E905E8F4A} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{3A94C6B6-82E5-A1A2-A312-9D8E905E8F4A} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
@@ -309,6 +317,13 @@ Global
 		{A245516C-DF9D-4DF9-B6CB-B8E99D56D679} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{A245516C-DF9D-4DF9-B6CB-B8E99D56D679} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{4755D7E6-9C18-87F7-9FB0-AA8AF1801E83} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{4755D7E6-9C18-87F7-9FB0-AA8AF1801E83} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{18FC8021-2861-97B8-C06F-E793AD2027C2} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
 		{18FC8021-2861-97B8-C06F-E793AD2027C2} = {914C77C9-212A-4DD0-8D9A-074620E77FAA}
+		{B904B17F-4D71-4634-A0A5-B12C44BB2BC2} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{A3B427C3-E901-4EF6-A426-8CB34E92BF67} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{0E8D3530-AE38-4302-B8A8-384BD85EE4DF} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{CE23DAC2-A1EF-4AF3-878E-C507D252276D} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{20C76912-A132-476D-95BA-BBB5955A819C} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{93979EBC-A9EC-41B8-A440-156F23775084} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
+		{10F05479-5561-4711-BF62-C3951551B51D} = {46008B91-6EC0-448B-8D1A-D8C6D2EEBEF4}
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(ExtensibilityGlobals) = postSolution
 	GlobalSection(ExtensibilityGlobals) = postSolution
 		SolutionGuid = {EABC01E3-3EB5-47EF-B46E-AAD8BB3585F1}
 		SolutionGuid = {EABC01E3-3EB5-47EF-B46E-AAD8BB3585F1}

+ 1 - 1
Share/Tool/Share.Tool.csproj

@@ -59,7 +59,7 @@
     </ItemGroup>
     </ItemGroup>
     
     
     <ItemGroup>
     <ItemGroup>
-      <ProjectReference Include="..\..\DotNet\Core\DotNet.Core.csproj" />
+      <ProjectReference Include="..\..\Unity\Packages\com.et.core\DotNet~\ET.Core.csproj" />
     </ItemGroup>
     </ItemGroup>
 
 
 </Project>
 </Project>

+ 18 - 8
DotNet/Core/DotNet.Core.csproj → Unity/Packages/com.et.core/DotNet~/ET.Core.csproj

@@ -17,7 +17,7 @@
     <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
     <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
       <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
       <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
       <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
       <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
-      <OutputPath>..\..\Bin\</OutputPath>
+      <OutputPath>./obj</OutputPath>
       <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
       <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
       <Optimize>false</Optimize>
       <Optimize>false</Optimize>
       <NoWarn>0169,0649,3021,8981,CS9193,CS9192,NU1903</NoWarn>
       <NoWarn>0169,0649,3021,8981,CS9193,CS9192,NU1903</NoWarn>
@@ -26,20 +26,30 @@
     <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">  
     <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">  
       <AllowUnsafeBlocks>true</AllowUnsafeBlocks> 
       <AllowUnsafeBlocks>true</AllowUnsafeBlocks> 
       <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
       <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
-      <OutputPath>..\..\Bin\</OutputPath>
+      <OutputPath>./obj</OutputPath>
       <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
       <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
       <NoWarn>0169,0649,3021,8981,CS9193,CS9192,NU1903</NoWarn>
       <NoWarn>0169,0649,3021,8981,CS9193,CS9192,NU1903</NoWarn>
     </PropertyGroup>
     </PropertyGroup>
     
     
-    <ItemGroup> 
-        <Compile Include="..\..\Unity\Packages\com.et.core\Scripts\Core\**\*.cs">
-            <Link>Core\%(RecursiveDir)%(FileName)%(Extension)</Link>
+    <ItemGroup>
+        <Compile Include="../Runtime/**/*.cs" xmlns="">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
         </Compile>
         </Compile>
     </ItemGroup>
     </ItemGroup>
     
     
     <ItemGroup>
     <ItemGroup>
-      <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" /> 
-      <ProjectReference Include="..\..\Share\Share.SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-      <ProjectReference Include="..\ThirdParty\DotNet.ThirdParty.csproj" />
+      <ProjectReference Include="..\..\..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" /> 
+      <ProjectReference Include="..\..\..\..\Share\SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
+    </ItemGroup>
+
+    <ItemGroup>
+        <PackageReference Include="CommandLineParser" Version="2.8.0" />
+        <PackageReference Include="EPPlus" Version="5.8.8" />
+        <PackageReference Include="MemoryPack" Version="1.10.0" />
+        <PackageReference Include="MongoDB.Driver" Version="2.17.1" />
+        <PackageReference Include="NLog" Version="4.7.15" />
+        <PackageReference Include="SharpZipLib" Version="1.3.3" />
+        <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="4.0.1" />
+        <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.0.1" />
     </ItemGroup>
     </ItemGroup>
 </Project>
 </Project>

+ 1 - 1
Unity/Packages/com.et.core/Runtime~/Model/Share/Entry.cs

@@ -38,7 +38,7 @@ namespace ET
             // 注册Entity序列化器
             // 注册Entity序列化器
             EntitySerializeRegister.Init();
             EntitySerializeRegister.Init();
 
 
-            SceneTypeSingleton sceneTypeSingleton = World.Instance.AddSingleton<SceneTypeSingleton, Type>(typeof(SceneType));
+            World.Instance.AddSingleton<SceneTypeSingleton, Type>(typeof(SceneType));
             World.Instance.AddSingleton<ObjectPool>();
             World.Instance.AddSingleton<ObjectPool>();
             World.Instance.AddSingleton<IdGenerater>();
             World.Instance.AddSingleton<IdGenerater>();
             World.Instance.AddSingleton<OpcodeType>();
             World.Instance.AddSingleton<OpcodeType>();

+ 0 - 13
Unity/Packages/com.et.core/Runtime~/Model/Share/MemoryPackRegister.cs

@@ -1,13 +0,0 @@
-using MemoryPack;
-
-namespace ET
-{
-    public static class MemoryPackRegister
-    {
-        public static void Init()
-        {
-            MemoryPackFormatterProvider.Register(new MemoryPackChildrenCollectionFormatter());
-            MemoryPackFormatterProvider.Register(new MemoryPackComponentsCollectionFormatter());
-        }
-    }
-}

+ 38 - 0
Unity/Packages/com.et.dotrecast/DotNet~/ET.DotRecast.csproj

@@ -0,0 +1,38 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+    <PropertyGroup>
+        <TargetFramework>net8.0</TargetFramework>
+        <Nullable>disable</Nullable>
+        <LangVersion>12</LangVersion>
+        <RootNamespace>ET</RootNamespace>
+        <AssemblyName>ET.DotRecast</AssemblyName>
+    </PropertyGroup>
+
+    <PropertyGroup>
+        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
+        <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
+    </PropertyGroup>
+
+    <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
+        <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
+        <OutputPath>./obj</OutputPath>
+        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <Optimize>true</Optimize>
+        <NoWarn>0169,0649,3021,8981,NU1903</NoWarn>
+    </PropertyGroup>
+
+    <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
+        <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
+        <OutputPath>./obj</OutputPath>
+        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+        <NoWarn>0169,0649,3021,8981,NU1903</NoWarn>
+    </PropertyGroup>
+
+    <ItemGroup>
+        <Compile Include="..\Runtime\**\*.cs">
+            <Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
+        </Compile>
+    </ItemGroup>
+</Project>

+ 3 - 5
DotNet/Loader/CodeLoader.cs → Unity/Packages/com.et.loader/DotNet~/CodeLoader.cs

@@ -1,12 +1,10 @@
 using System;
 using System;
-using System.Collections.Generic;
 using System.IO;
 using System.IO;
 using System.Reflection;
 using System.Reflection;
 using System.Runtime.Loader;
 using System.Runtime.Loader;
 
 
 namespace ET
 namespace ET
 {
 {
-    /*
     public class CodeLoader: Singleton<CodeLoader>, ISingletonAwake
     public class CodeLoader: Singleton<CodeLoader>, ISingletonAwake
     {
     {
         private AssemblyLoadContext assemblyLoadContext;
         private AssemblyLoadContext assemblyLoadContext;
@@ -27,7 +25,7 @@ namespace ET
 
 
             Assembly hotfixAssembly = this.LoadHotfix();
             Assembly hotfixAssembly = this.LoadHotfix();
 
 
-            World.Instance.AddSingleton<CodeTypes, Assembly[]>(new[] { typeof (World).Assembly, typeof(Init).Assembly, this.assembly, hotfixAssembly });
+            World.Instance.AddSingleton<CodeTypes, Assembly[]>([typeof (World).Assembly, typeof(Init).Assembly, this.assembly, hotfixAssembly]);
 
 
             IStaticMethod start = new StaticMethod(this.assembly, "ET.Entry", "Start");
             IStaticMethod start = new StaticMethod(this.assembly, "ET.Entry", "Start");
             start.Run();
             start.Run();
@@ -48,11 +46,11 @@ namespace ET
         {
         {
             Assembly hotfixAssembly = this.LoadHotfix();
             Assembly hotfixAssembly = this.LoadHotfix();
 			
 			
-            CodeTypes codeTypes = World.Instance.AddSingleton<CodeTypes, Assembly[]>(new[] { typeof (World).Assembly, typeof(Init).Assembly, this.assembly, hotfixAssembly });
+            CodeTypes codeTypes = World.Instance.AddSingleton<CodeTypes, Assembly[]>([typeof (World).Assembly, typeof(Init).Assembly, this.assembly, hotfixAssembly
+            ]);
 
 
             codeTypes.CreateCode();
             codeTypes.CreateCode();
             Log.Debug($"reload dll finish!");
             Log.Debug($"reload dll finish!");
         }
         }
     }
     }
-    */
 }
 }

+ 0 - 0
DotNet/Loader/ConfigLoaderInvoker.cs → Unity/Packages/com.et.loader/DotNet~/ConfigLoaderInvoker.cs


+ 7 - 10
DotNet/Loader/DotNet.Loader.csproj → Unity/Packages/com.et.loader/DotNet~/ET.Loader.csproj

@@ -3,7 +3,7 @@
         <TargetFramework>net8.0</TargetFramework>
         <TargetFramework>net8.0</TargetFramework>
         <RootNamespace>ET</RootNamespace>
         <RootNamespace>ET</RootNamespace>
         <LangVersion>12</LangVersion>
         <LangVersion>12</LangVersion>
-        <AssemblyName>Loader</AssemblyName>
+        <AssemblyName>ET.Loader</AssemblyName>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup>
     <PropertyGroup>
         <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
         <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
@@ -11,25 +11,22 @@
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
     <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
         <DefineConstants>DOTNET</DefineConstants>
         <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath> 
+        <OutputPath>./obj</OutputPath> 
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <Optimize>false</Optimize>
         <Optimize>false</Optimize>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> 
     <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> 
         <DefineConstants>DOTNET</DefineConstants>
         <DefineConstants>DOTNET</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath>
+        <OutputPath>./obj</OutputPath>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <Optimize>true</Optimize>
         <Optimize>true</Optimize>
     </PropertyGroup>
     </PropertyGroup>
+    
     <ItemGroup>
     <ItemGroup>
-        
-    </ItemGroup> 
-    <ItemGroup> 
-        <ProjectReference Include="..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\..\Share\Share.SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
-        <ProjectReference Include="..\Core\DotNet.Core.csproj" />
-        <ProjectReference Include="..\ThirdParty\DotNet.ThirdParty.csproj" />
+      <ProjectReference Include="..\..\..\..\DotNet\Model\ET.Model.csproj" />
+      <ProjectReference Include="..\..\..\..\Share\Analyzer\Share.Analyzer.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" /> 
+      <ProjectReference Include="..\..\..\..\Share\SourceGenerator\Share.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
     </ItemGroup>
     </ItemGroup>
 </Project>
 </Project>

+ 0 - 0
DotNet/Loader/Init.cs → Unity/Packages/com.et.loader/DotNet~/Init.cs


+ 4 - 19
DotNet/ThirdParty/DotNet.ThirdParty.csproj → Unity/Packages/com.et.mathematics/Runtime~/ET.Mathematics.csproj

@@ -5,7 +5,7 @@
         <Nullable>disable</Nullable>
         <Nullable>disable</Nullable>
         <LangVersion>12</LangVersion>
         <LangVersion>12</LangVersion>
         <RootNamespace>ET</RootNamespace>
         <RootNamespace>ET</RootNamespace>
-        <AssemblyName>ThirdParty</AssemblyName>
+        <AssemblyName>ET.Mathematics</AssemblyName>
     </PropertyGroup>
     </PropertyGroup>
 
 
     <PropertyGroup>
     <PropertyGroup>
@@ -15,7 +15,7 @@
 
 
     <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
     <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
         <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
         <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath>
+        <OutputPath>./obj</OutputPath>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <Optimize>true</Optimize>
         <Optimize>true</Optimize>
@@ -24,30 +24,15 @@
 
 
     <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
     <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
         <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
         <DefineConstants>DOTNET;UNITY_DOTSPLAYER</DefineConstants>
-        <OutputPath>..\..\Bin\</OutputPath>
+        <OutputPath>./obj</OutputPath>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
         <NoWarn>0169,0649,3021,8981,NU1903</NoWarn>
         <NoWarn>0169,0649,3021,8981,NU1903</NoWarn>
     </PropertyGroup>
     </PropertyGroup>
 
 
     <ItemGroup>
     <ItemGroup>
-        <Compile Include="..\..\Unity\Packages\com.et.thirdparty\Scripts\ETTask\**\*.cs">
-            <Link>ETTask/%(RecursiveDir)%(FileName)%(Extension)</Link>
-        </Compile>
-
-        <Compile Include="..\..\Unity\Library\PackageCache\com.unity.mathematics*\Unity.Mathematics\**\*.cs">
+        <Compile Include="..\..\..\Library\PackageCache\com.unity.mathematics*\Unity.Mathematics\**\*.cs">
             <Link>Unity.Mathematics/$([System.String]::new(%(RecursiveDir)).Substring($([System.String]::new(%(RecursiveDir)).Indexof("Unity.Mathematics"))).Replace("Unity.Mathematics", ""))/%(FileName)%(Extension)</Link>
             <Link>Unity.Mathematics/$([System.String]::new(%(RecursiveDir)).Substring($([System.String]::new(%(RecursiveDir)).Indexof("Unity.Mathematics"))).Replace("Unity.Mathematics", ""))/%(FileName)%(Extension)</Link>
         </Compile>
         </Compile>
     </ItemGroup>
     </ItemGroup>
-
-    <ItemGroup>
-        <PackageReference Include="CommandLineParser" Version="2.8.0" />
-        <PackageReference Include="EPPlus" Version="5.8.8" />
-        <PackageReference Include="MemoryPack" Version="1.10.0" />
-        <PackageReference Include="MongoDB.Driver" Version="2.17.1" />
-        <PackageReference Include="NLog" Version="4.7.15" />
-        <PackageReference Include="SharpZipLib" Version="1.3.3" />
-        <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="4.0.1" />
-        <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.0.1" />
-    </ItemGroup>
 </Project>
 </Project>

+ 0 - 0
DotNet/ThirdParty/Unity.Mathematics/PropertyAttribute.cs → Unity/Packages/com.et.mathematics/Runtime~/Unity.Mathematics/PropertyAttribute.cs


+ 19 - 0
Unity/Packages/com.et.mathematics/package.json

@@ -0,0 +1,19 @@
+{
+  "name": "com.et.mathematics",
+  "displayName": "ET.Mathematics",
+  "version": "0.0.1",
+  "unity": "2022.3",
+  "description": "et mathematics",
+  "author": {
+    "name": "tanghai",
+    "url": "https://github.com/egametang/ET"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/egametang/ET"
+  },
+  "relatedPackages": {},
+  "dependencies": {
+    "com.unity.mathematics": "1.2.6"
+  }
+}

+ 7 - 0
Unity/Packages/com.et.mathematics/package.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ebe8380b8807b8c46ab4d3cd334805aa
+PackageManifestImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 39
Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MailBoxType_OrderedMessageHandler.cs

@@ -1,39 +0,0 @@
-namespace ET
-{
-    [Invoke((long)MailBoxType.OrderedMessage)]
-    public class MailBoxType_OrderedMessageHandler: AInvokeHandler<MailBoxInvoker>
-    {
-        public override void Handle(MailBoxInvoker args)
-        {
-            HandleInner(args).Coroutine();
-        }
-
-        private static async ETTask HandleInner(MailBoxInvoker args)
-        {
-            MailBoxComponent mailBoxComponent = args.MailBoxComponent;
-            
-            MessageObject messageObject = args.MessageObject;
-
-            Fiber fiber = mailBoxComponent.Fiber();
-            if (fiber.IsDisposed)
-            {
-                return;
-            }
-
-            long instanceId = mailBoxComponent.InstanceId;
-            using (await fiber.Root.GetComponent<CoroutineLockComponent>().Wait(CoroutineLockType.Mailbox, mailBoxComponent.ParentInstanceId))
-            {
-                if (mailBoxComponent.InstanceId != instanceId)
-                {
-                    if (messageObject is IRequest request)
-                    {
-                        IResponse resp = MessageHelper.CreateResponse(request.GetType(), request.RpcId, ErrorCore.ERR_NotFoundActor);
-                        mailBoxComponent.Root().GetComponent<ProcessInnerSender>().Reply(args.FromAddress, resp);
-                    }
-                    return;
-                }
-                await MessageDispatcher.Instance.Handle(mailBoxComponent.Parent, args.FromAddress, messageObject);
-            }
-        }
-    }
-}

+ 0 - 20
Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MailBoxType_UnOrderedMessageHandler.cs

@@ -1,20 +0,0 @@
-namespace ET
-{
-    [Invoke((long)MailBoxType.UnOrderedMessage)]
-    public class MailBoxType_UnOrderedMessageHandler: AInvokeHandler<MailBoxInvoker>
-    {
-        public override void Handle(MailBoxInvoker args)
-        {
-            HandleAsync(args).Coroutine();
-        }
-        
-        private static async ETTask HandleAsync(MailBoxInvoker args)
-        {
-            MailBoxComponent mailBoxComponent = args.MailBoxComponent;
-            
-            MessageObject messageObject = args.MessageObject;
-            
-            await MessageDispatcher.Instance.Handle(mailBoxComponent.Parent, args.FromAddress, messageObject);
-        }
-    }
-}

+ 0 - 104
Unity/Packages/com.et.statesync/Runtime~/Hotfix/Share/Module/Actor/MessageHandler.cs

@@ -1,104 +0,0 @@
-using System;
-
-namespace ET
-{
-    public abstract class MessageHandler<E, Message>: HandlerObject, IMHandler where E : Entity where Message : class, IMessage
-    {
-        protected abstract ETTask Run(E entity, Message message);
-
-        public async ETTask Handle(Entity entity, Address fromAddress, MessageObject actorMessage)
-        {
-            if (actorMessage is not Message msg)
-            {
-                Log.Error($"消息类型转换错误: {actorMessage.GetType().FullName} to {typeof (Message).Name}");
-                return;
-            }
-
-            if (entity is not E e)
-            {
-                Log.Error($"Actor类型转换错误: {entity.GetType().FullName} to {typeof (E).Name} --{typeof (Message).FullName}");
-                return;
-            }
-
-            await this.Run(e, msg);
-        }
-
-        public Type GetRequestType()
-        {
-            if (typeof (ILocationMessage).IsAssignableFrom(typeof (Message)))
-            {
-                Log.Error($"message is IActorLocationMessage but handler is AMActorHandler: {typeof (Message)}");
-            }
-
-            return typeof (Message);
-        }
-
-        public Type GetResponseType()
-        {
-            return null;
-        }
-    }
-    
-    public abstract class MessageHandler<E, Request, Response>: HandlerObject, IMHandler where E : Entity where Request : MessageObject, IRequest where Response : MessageObject, IResponse
-    {
-        protected abstract ETTask Run(E unit, Request request, Response response);
-
-        public async ETTask Handle(Entity entity, Address fromAddress, MessageObject actorMessage)
-        {
-            try
-            {
-                Fiber fiber = entity.Fiber();
-                if (actorMessage is not Request request)
-                {
-                    Log.Error($"消息类型转换错误: {actorMessage.GetType().FullName} to {typeof (Request).Name}");
-                    return;
-                }
-
-                if (entity is not E ee)
-                {
-                    Log.Error($"Actor类型转换错误: {entity.GetType().FullName} to {typeof (E).FullName} --{typeof (Request).FullName}");
-                    return;
-                }
-
-                int rpcId = request.RpcId;
-                Response response = ObjectPool.Fetch<Response>();
-                try
-                {
-                    await this.Run(ee, request, response);
-                }
-                catch (RpcException exception)
-                {
-                    response.Error = exception.Error;
-                    response.Message = exception.ToString();
-                }
-                catch (Exception exception)
-                {
-                    response.Error = ErrorCore.ERR_RpcFail;
-                    response.Message = exception.ToString();
-                }
-                
-                response.RpcId = rpcId;
-                fiber.Root.GetComponent<ProcessInnerSender>().Reply(fromAddress, response);
-            }
-            catch (Exception e)
-            {
-                throw new Exception($"解释消息失败: {actorMessage.GetType().FullName}", e);
-            }
-        }
-
-        public Type GetRequestType()
-        {
-            if (typeof (ILocationRequest).IsAssignableFrom(typeof (Request)))
-            {
-                Log.Error($"message is IActorLocationMessage but handler is AMActorRpcHandler: {typeof (Request)}");
-            }
-
-            return typeof (Request);
-        }
-
-        public Type GetResponseType()
-        {
-            return typeof (Response);
-        }
-    }
-}

+ 8 - 0
Unity/Packages/packages-lock.json

@@ -43,6 +43,14 @@
         "com.et.yooassets": ""
         "com.et.yooassets": ""
       }
       }
     },
     },
+    "com.et.mathematics": {
+      "version": "file:com.et.mathematics",
+      "depth": 0,
+      "source": "embedded",
+      "dependencies": {
+        "com.unity.mathematics": "1.2.6"
+      }
+    },
     "com.et.statesync": {
     "com.et.statesync": {
       "version": "file:com.et.statesync",
       "version": "file:com.et.statesync",
       "depth": 0,
       "depth": 0,