Merge pull request #17 from Y-way/OptimizeAssetOperationHandle

AssetOperationHandle类新增便捷方法,便于链式编程
pull/18/head
何冠峰 2022-06-30 12:03:57 +08:00 committed by GitHub
commit bb3065d08d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 32 additions and 10 deletions

View File

@ -49,7 +49,31 @@ namespace YooAsset
return Provider.AssetObject;
}
}
/// <summary>
/// 获取资源对象
/// </summary>
/// <typeparam name="TAsset"></typeparam>
/// <param name="asset"></param>
/// <returns></returns>
public AssetOperationHandle GetAssetObjet<TAsset>(out TAsset asset) where TAsset : UnityEngine.Object
{
if(Status != EOperationStatus.Succeed)
{
YooLogger.Warning($"The {Provider.MainAssetInfo.AssetPath}[{Provider.MainAssetInfo.AssetType}] is not success.Error[{Provider.LastError}]");
}
asset = AssetObject as TAsset;
return this;
}
/// <summary>
/// 等待异步执行完毕
/// </summary>
public AssetOperationHandle WaitForAsyncOperationComplete()
{
if (IsValid == false)
return this;
Provider.WaitForAsyncComplete();
return this;
}
/// <summary>
/// 等待异步执行完毕
/// </summary>
@ -109,8 +133,6 @@ namespace YooAsset
{
return InstantiateAsyncInternal(position, rotation, parent, true);
}
private GameObject InstantiateSyncInternal(Vector3 position, Quaternion rotation, Transform parent, bool setPositionRotation)
{
if (IsValid == false)