异步加载已修复, Config更新正推动
This commit is contained in:
@@ -250,7 +250,7 @@ namespace Demo.Game
|
||||
}
|
||||
yield break;
|
||||
}
|
||||
yield return Foo(rootGameObject.ParseFromScriptFile2Expr(rootObject));//ConventionUtility.AvoidFakeStop(rootGameObject.ParseFromScriptFile2Expr(rootObject));
|
||||
yield return ConventionUtility.AvoidFakeStop(rootGameObject.ParseFromScriptFile2Expr(rootObject));//Foo(rootGameObject.ParseFromScriptFile2Expr(rootObject));
|
||||
int applyDownCount = 0;
|
||||
void NDFS(ScriptableObject current)
|
||||
{
|
||||
@@ -264,6 +264,7 @@ namespace Demo.Game
|
||||
IEnumerator NDFSFoo()
|
||||
{
|
||||
yield return current.ApplyScript();
|
||||
current.ResetEnterGameStatus();
|
||||
applyDownCount--;
|
||||
}
|
||||
ConventionUtility.StartCoroutine(NDFSFoo());
|
||||
@@ -291,6 +292,27 @@ namespace Demo.Game
|
||||
using var stream = new FileInfo(projectBinaryFile).OpenRead();
|
||||
using var reader = new BinaryReader(stream);
|
||||
rootGameObject.Config.Deserialize(reader);
|
||||
int applyDownCount = 0;
|
||||
void NDFS(ScriptableObject current)
|
||||
{
|
||||
foreach (var child in current.Childs)
|
||||
{
|
||||
NDFS(child);
|
||||
}
|
||||
if (current.IsScriptApply == false)
|
||||
{
|
||||
applyDownCount++;
|
||||
IEnumerator NDFSFoo()
|
||||
{
|
||||
yield return current.ApplyScript();
|
||||
current.ResetEnterGameStatus();
|
||||
applyDownCount--;
|
||||
}
|
||||
ConventionUtility.StartCoroutine(NDFSFoo());
|
||||
}
|
||||
}
|
||||
NDFS(rootGameObject);
|
||||
yield return new WaitUntil(() => applyDownCount == 0);
|
||||
}
|
||||
float loadRootObjectEndTime = Time.realtimeSinceStartup;
|
||||
float loadRootObjectElapsed = (loadRootObjectEndTime - loadRootObjectStartTime) * 1000f;
|
||||
|
||||
Reference in New Issue
Block a user