{"record":{"id":"80a2f292e56b259b","repo":"EllanJiang/GameFramework","slug":"can-not-load-dependency-asset-0-when-load-scene-1","errorCode":null,"errorMessage":"Can not load dependency asset '{0}' when load scene '{1}'.","messagePattern":"Can not load dependency asset '(.+?)' when load scene '(.+?)'\\.","errorType":"exception","errorClass":"GameFrameworkException","httpStatus":null,"severity":"error","filePath":"GameFramework/Resource/ResourceManager.ResourceLoader.cs","lineNumber":413,"sourceCode":"                        return;\n                    }\n\n                    throw new GameFrameworkException(errorMessage);\n                }\n\n                LoadSceneTask mainTask = LoadSceneTask.Create(sceneAssetName, priority, resourceInfo, dependencyAssetNames, loadSceneCallbacks, userData);\n                foreach (string dependencyAssetName in dependencyAssetNames)\n                {\n                    if (!LoadDependencyAsset(dependencyAssetName, priority, mainTask, userData))\n                    {\n                        string errorMessage = Utility.Text.Format(\"Can not load dependency asset '{0}' when load scene '{1}'.\", dependencyAssetName, sceneAssetName);\n                        if (loadSceneCallbacks.LoadSceneFailureCallback != null)\n                        {\n                            loadSceneCallbacks.LoadSceneFailureCallback(sceneAssetName, LoadResourceStatus.DependencyError, errorMessage, userData);\n                            return;\n                        }\n\n                        throw new GameFrameworkException(errorMessage);\n                    }\n                }\n\n                m_TaskPool.AddTask(mainTask);\n                if (!resourceInfo.Ready)\n                {\n                    m_ResourceManager.UpdateResource(resourceInfo.ResourceName);\n                }\n            }\n\n            /// <summary>\n            /// 异步卸载场景。\n            /// </summary>\n            /// <param name=\"sceneAssetName\">要卸载场景资源的名称。</param>\n            /// <param name=\"unloadSceneCallbacks\">卸载场景回调函数集。</param>\n            /// <param name=\"userData\">用户自定义数据。</param>\n            public void UnloadScene(string sceneAssetName, UnloadSceneCallbacks unloadSceneCallbacks, object userData)\n            {","sourceCodeStart":395,"sourceCodeEnd":431,"githubUrl":"https://github.com/EllanJiang/GameFramework/blob/d0c010b05167c58e92350449d04864a91ca13fd2/GameFramework/Resource/ResourceManager.ResourceLoader.cs#L395-L431","documentation":"Thrown by ResourceLoader.LoadScene when LoadDependencyAsset fails for one of the scene's dependency assets. A scene cannot be loaded until every dependency loads, so the whole LoadScene call aborts synchronously with the failing dependency name and scene name in the message.","triggerScenarios":"LoadScene creates the main task, then LoadDependencyAsset fails for a dependency (missing/invalid resource info or binary) with LoadSceneFailureCallback null.","commonSituations":"Resource package missing dependency assets for the scene, outdated resource version, dependencies removed in a build, or corrupted resource tables.","solutions":["Rebuild or re-download resource packages so scene dependencies are present.","Check the error message to identify the failing dependency asset.","Update to the correct resource version before loading the scene.","Pass LoadSceneCallbacks with a failure callback to receive DependencyError status instead of a throw."],"exampleFix":"// before\nresourceComponent.LoadScene(sceneName, priority, null);\n// after\nresourceComponent.LoadScene(sceneName, priority, new LoadSceneCallbacks(onLoaded,\n    (n, s, m, u) => Log.Error($\"Scene {n} dependency error: {m}\")));","handlingStrategy":"try-catch","validationCode":"foreach (var dep in dependencyNames)\n    if (!resourceComponent.HasAsset(dep)) Log.Warning(\"Scene dependency missing: \" + dep);","typeGuard":null,"tryCatchPattern":"try { resourceComponent.LoadScene(sceneName, priority, new LoadSceneCallbacks(onLoaded,\n    (n, s, m, u) => Log.Error($\"Scene dependency failed: {m}\"))); }\ncatch (GameFrameworkException ex) { Log.Error(ex.Message); }","preventionTips":["Ship complete scene dependency sets","Sync resource versions before scene loads","Always pass LoadSceneCallbacks with failure handler"],"tags":["gameframework","resource-management","scene-loading","dependency-assets"],"backgroundTag":"missing-dependency","analyzedSha":"d0c010b05167c58e92350449d04864a91ca13fd2","analyzedAt":"2026-09-15T13:37:15.352Z","contentChangedAt":"2026-09-15T13:37:15.352Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}