Optimize the scene unload logic.

优化场景卸载逻辑,在加载新的主场景的时候自动卸载已经加载的所有场景。
This commit is contained in:
hevinci
2022-04-21 21:11:11 +08:00
parent 20d2c517b2
commit f3ab8f63e7
7 changed files with 112 additions and 58 deletions

View File

@@ -48,12 +48,15 @@ namespace YooAsset
_steps = ESteps.Done;
Status = EOperationStatus.Failed;
Error = $"{nameof(AssetOperationHandle)} is invalid.";
return;
}
if (_handle.AssetObject == null)
{
_steps = ESteps.Done;
Status = EOperationStatus.Failed;
Error = $"{nameof(AssetOperationHandle.AssetObject)} is null.";
return;
}
if(_setPositionRotation)

View File

@@ -12,7 +12,6 @@ namespace YooAsset
{
Normal,
Error,
Skip,
}
private enum ESteps
{
@@ -40,10 +39,6 @@ namespace YooAsset
}
}
internal UnloadSceneOperation()
{
_flag = EFlag.Skip;
}
internal UnloadSceneOperation(string error)
{
_flag = EFlag.Error;
@@ -60,11 +55,6 @@ namespace YooAsset
{
_steps = ESteps.UnLoad;
}
else if (_flag == EFlag.Skip)
{
_steps = ESteps.Done;
Status = EOperationStatus.Succeed;
}
else if (_flag == EFlag.Error)
{
_steps = ESteps.Done;