Merge pull request #34 from ALEXTANGXIAO/TEngine_v_3.0.0

TEngine v 3.0.0 HybridCLR RunAble
This commit is contained in:
ALEXTANG
2023-04-25 14:13:05 +08:00
committed by GitHub
43 changed files with 66 additions and 31 deletions

View File

@@ -0,0 +1,18 @@
{
"name": "Procedure",
"rootNamespace": "",
"references": [
"GUID:aa06d4cc755c979489c256c1bcca1dfb",
"GUID:13ba8ce62aa80c74598530029cb2d649",
"GUID:6055be8ebefd69e48b49212b09b47b2f"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": true,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4bee17c3950019843ae3a9ae754783bc
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -41,6 +41,21 @@ namespace GameMain
m_LoadAssemblyComplete = false;
m_HotfixAssemblys = new List<Assembly>();
//AOT Assembly加载原始metadata
if (SettingsUtils.HybridCLRCustomGlobalSettings.Enable)
{
#if !UNITY_EDITOR
m_LoadMetadataAssemblyComplete = false;
LoadMetadataForAOTAssembly();
#else
m_LoadMetadataAssemblyComplete = true;
#endif
}
else
{
m_LoadMetadataAssemblyComplete = true;
}
if (!NeedLoadDll || GameModule.Resource.playMode == EPlayMode.EditorSimulateMode)
{
m_MainLogicAssembly = GetMainLogicAssembly();
@@ -74,20 +89,6 @@ namespace GameMain
}
}
if (SettingsUtils.HybridCLRCustomGlobalSettings.Enable)
{
#if UNITY_EDITOR
m_LoadMetadataAssemblyComplete = false;
LoadMetadataForAOTAssembly();
#else
m_LoadMetadataAssemblyComplete = true;
#endif
}
else
{
m_LoadMetadataAssemblyComplete = true;
}
if (m_LoadAssetCount == 0)
{
m_LoadAssemblyComplete = true;

View File

@@ -17,6 +17,6 @@ MonoBehaviour:
BuildPackage: DefaultPackage
CompressOption: 2
OutputNameStyle: 1
CopyBuildinFileOption: 0
CopyBuildinFileOption: 1
CopyBuildinFileTags:
EncyptionClassName: FileOffsetEncryption

View File

@@ -41,10 +41,11 @@ MonoBehaviour:
m_Enable: 1
m_Gitee: 1
HotUpdateAssemblies:
- GameLogic.dll
- GameBase.dll
- GameLogic.dll
- GameProto.dll
- BattleCore.Runtime.dll
- Assembly-CSharp.dll
AOTMetaAssemblies:
- mscorlib.dll
- System.dll

View File

@@ -347,6 +347,7 @@ namespace TEngine
try
{
#if UNITY_EDITOR
TypeInfo typeInfo = typeof(AudioSettings).GetTypeInfo();
PropertyInfo propertyInfo = typeInfo.GetDeclaredProperty("unityAudioDisabled");
_bUnityAudioDisabled = (bool)propertyInfo.GetValue(null);
@@ -354,6 +355,7 @@ namespace TEngine
{
return;
}
#endif
}
catch (Exception e)
{

View File

@@ -10,7 +10,7 @@ namespace TEngine
/// </summary>
public class DefaultSettingHelper : SettingHelperBase
{
private const string SettingFileName = "GameFrameworkSetting.dat";
private const string SettingFileName = "TEngineSetting.dat";
private string m_FilePath = null;
private DefaultSetting m_Settings = null;

View File

@@ -30,7 +30,7 @@ public class HybridCLRCustomGlobalSettings
[Header("Auto sync with [HybridCLRGlobalSettings]")]
[Tooltip("You should modify the file form file path [Assets/CustomHybridCLR/Settings/HybridCLRGlobalSettings.asset]")]
public List<string> HotUpdateAssemblies = new List<string>() { "GameLogic.dll","GameBase.dll","GameProto.dll","BattleCore.Runtime.dll"};
public List<string> HotUpdateAssemblies = new List<string>() { "GameBase.dll","GameLogic.dll","GameProto.dll","BattleCore.Runtime.dll","Assembly-CSharp.dll"};
[Header("Need manual setting!")] public List<string> AOTMetaAssemblies= new List<string>() {"mscorlib.dll","System.dll","System.Core.dll" };