From 1e39b1af6d8baacfeda5bd8d41c1714f32fa1968 Mon Sep 17 00:00:00 2001 From: Y-way Date: Tue, 28 Jun 2022 19:17:47 +0800 Subject: [PATCH] =?UTF-8?q?AssetOperationHandle=E7=B1=BB=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E4=BE=BF=E6=8D=B7=E6=96=B9=E6=B3=95,=E4=BE=BF=E4=BA=8E?= =?UTF-8?q?=E9=93=BE=E5=BC=8F=E7=BC=96=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TextAsset asset; YooAssets.LoadAssetAsync(name).WaitForAsyncOperationComplete().GetAssetObjet(out asset).Release(); YooAssets.LoadAssetAsync(name).Completed += handler => { handler.GetAssetObjet(out asset).Release(); }; --- .../Handles/AssetOperationHandle.cs | 38 ++++++++++++++----- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/Assets/YooAsset/Runtime/AssetSystem/Handles/AssetOperationHandle.cs b/Assets/YooAsset/Runtime/AssetSystem/Handles/AssetOperationHandle.cs index 7083e3c..94c8b1a 100644 --- a/Assets/YooAsset/Runtime/AssetSystem/Handles/AssetOperationHandle.cs +++ b/Assets/YooAsset/Runtime/AssetSystem/Handles/AssetOperationHandle.cs @@ -49,21 +49,41 @@ namespace YooAsset return Provider.AssetObject; } } - + /// + /// 获取资源对象 + /// + /// + /// + /// + public AssetOperationHandle GetAssetObjet(out TAsset asset) where TAsset : UnityEngine.Object + { + asset = AssetObject as TAsset; + return this; + } /// /// 等待异步执行完毕 /// - public void WaitForAsyncComplete() + public AssetOperationHandle WaitForAsyncOperationComplete() { if (IsValid == false) - return; + return this; Provider.WaitForAsyncComplete(); + return this; } + /// + /// 等待异步执行完毕 + /// + public void WaitForAsyncComplete() + { + if(IsValid == false) + return; + Provider.WaitForAsyncComplete(); + } - /// - /// 释放资源句柄 - /// - public void Release() + /// + /// 释放资源句柄 + /// + public void Release() { this.ReleaseInternal(); } @@ -109,8 +129,6 @@ namespace YooAsset { return InstantiateAsyncInternal(position, rotation, parent, true); } - - private GameObject InstantiateSyncInternal(Vector3 position, Quaternion rotation, Transform parent, bool setPositionRotation) { if (IsValid == false) @@ -142,4 +160,4 @@ namespace YooAsset return operation; } } -} \ No newline at end of file +}