bevyengine/bevy · error · LoadDirectError

Failed to load dependency {dependency:?} {error}

Error message

Failed to load dependency {dependency:?} {error}

What it means

LoadDirectError::LoadError: a dependency of the asset being loaded failed to load; the error records which dependency path failed and the underlying AssetLoadError (reader failure, deserialize failure, etc.). The parent load is aborted because its dependency tree is incomplete.

Source

Thrown at crates/bevy_asset/src/loader.rs:354

    fn asset_type_name(&self) -> &'static str {
        core::any::type_name::<A>()
    }
}

/// An error that occurs when attempting an async load using [`NestedLoadBuilder`].
#[derive(Error, Debug)]
pub enum LoadDirectError {
    /// The asset path was empty.
    #[error("Attempted to load an asset with an empty path \"{0}\"")]
    EmptyPath(AssetPath<'static>),
    /// Loading an asset path with a subasset at the end is unsupported. See issue [#18291].
    ///
    /// [#18291]: https://github.com/bevyengine/bevy/issues/18291
    #[error("Requested to load an asset path ({0:?}) with a subasset, but this is unsupported. See issue #18291")]
    RequestedSubasset(AssetPath<'static>),
    /// A general [`AssetLoadError`] for an asset dependency.
    #[error("Failed to load dependency {dependency:?} {error}")]
    LoadError {
        /// Which dependency failed.
        dependency: AssetPath<'static>,
        /// The original error for that dependency.
        error: Box<AssetLoadError>,
    },
}

/// An error that occurs while deserializing [`AssetMeta`].
#[derive(Error, Debug, Clone, PartialEq, Eq)]
pub enum DeserializeMetaError {
    /// Failed to deserialize the asset metadata.
    #[error("Failed to deserialize asset meta: {0:?}")]
    DeserializeSettings(#[from] SpannedError),
    /// Failed to deserialize the minimal asset metadata.
    #[error("Failed to deserialize minimal asset meta: {0:?}")]
    DeserializeMinimal(SpannedError),
}

View on GitHub (pinned to 396ca72708)

Solutions

  1. Inspect the inner error to find the root cause for the dependency path shown
  2. Fix or restore the missing/invalid dependency asset
  3. Handle failed dependent loads gracefully (e.g. placeholder asset) and retrigger once dependencies are fixed
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at crates/bevy_asset/src/loader.rs:354 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of bevyengine/bevy@396ca72708 (2026-08-20). Data as JSON: /api/errors/8ba9ca4636858afc. Report an issue: GitHub.