When loadBaseShaderLibrary() or Material.initializeStaticResources() fails, Scene.initializeStaticResources() logs the error through dart:developer log() (not visible on web), resets the memoized future, and returns a future that completes normally (lib/src/scene.dart, ~lines 328-352). So awaiting it succeeds despite the failure, and the developer instead hits the baseShaderLibrary getter throwing 'The base shader bundle has not been loaded yet. Await Scene.initializeStaticResources()...', which points at the thing they already did and hides the real cause.
Fix: rethrow from initializeStaticResources() so an awaiting caller sees the failure, and/or retain the load error and rethrow it from the getter through a web-visible path.
When
loadBaseShaderLibrary()orMaterial.initializeStaticResources()fails,Scene.initializeStaticResources()logs the error throughdart:developerlog()(not visible on web), resets the memoized future, and returns a future that completes normally (lib/src/scene.dart, ~lines 328-352). Soawaiting it succeeds despite the failure, and the developer instead hits thebaseShaderLibrarygetter throwing 'The base shader bundle has not been loaded yet. Await Scene.initializeStaticResources()...', which points at the thing they already did and hides the real cause.Fix: rethrow from
initializeStaticResources()so an awaiting caller sees the failure, and/or retain the load error and rethrow it from the getter through a web-visible path.