diff --git a/Assets/TEngine/Runtime/GameFramework/Resource/AssetReference.cs b/Assets/TEngine/Runtime/GameFramework/Resource/AssetReference.cs index 7f1768e1..99671dc1 100644 --- a/Assets/TEngine/Runtime/GameFramework/Resource/AssetReference.cs +++ b/Assets/TEngine/Runtime/GameFramework/Resource/AssetReference.cs @@ -22,7 +22,9 @@ namespace TEngine /// public AssetGroup AssetGroup => _assetGroup; +#pragma warning disable CS0628 public AssetReference Parent { protected set; get; } +#pragma warning restore CS0628 // ReSharper disable once ConvertToAutoPropertyWithPrivateSetter // ReSharper disable once InconsistentNaming @@ -179,8 +181,7 @@ namespace TEngine /// 父级引用。 /// 资源引用组件。 /// 捕获异常。 - public static AssetReference BindAssetReference(GameObject go, AssetOperationHandle handle = null, - string location = "", AssetReference parent = null) + public static AssetReference BindAssetReference(GameObject go, AssetOperationHandle handle, string location = "", AssetReference parent = null) { if (go == null) { @@ -198,6 +199,28 @@ namespace TEngine return ret; } + + /// + /// 绑定资源引用。 + /// + /// 游戏物体实例。 + /// 资源定位地址。 + /// 父级引用。 + /// 资源引用组件。 + /// 捕获异常。 + public static AssetReference BindAssetReference(GameObject go,string location = "", AssetReference parent = null) + { + if (go == null) + { + throw new GameFrameworkException($"BindAssetReference Failed => GameObject is null!"); + } + + var ret = go.AddComponent(); + + ret.Bind(operation: null, assetLocation: location, parent: parent); + + return ret; + } #endregion }