bevyengine/bevy · error · AssetReaderError

Path not found: {}

Error message

Path not found: {}

What it means

AssetReaderError::NotFound: the configured AssetReader could not find any asset at the requested path in its source. The path (as displayed in the error) does not exist in the asset source the reader is backed by.

Source

Thrown at crates/bevy_asset/src/io/mod.rs:52

use bevy_tasks::{BoxedFuture, ConditionalSendFuture};
use core::{
    mem::size_of,
    pin::Pin,
    task::{Context, Poll},
};
use futures_io::{AsyncRead, AsyncSeek, AsyncWrite};
use futures_lite::Stream;
use std::{
    io::SeekFrom,
    path::{Path, PathBuf},
};
use thiserror::Error;

/// Errors that occur while loading assets.
#[derive(Error, Debug, Clone)]
pub enum AssetReaderError {
    /// Path not found.
    #[error("Path not found: {}", _0.display())]
    NotFound(PathBuf),

    /// Encountered an I/O error while loading an asset.
    #[error("Encountered an I/O error while loading asset: {0}")]
    Io(Arc<std::io::Error>),

    /// The HTTP request completed but returned an unhandled [HTTP response status code](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status).
    /// - If the request returns a 404 error, expect [`AssetReaderError::NotFound`].
    /// - If the request fails before getting a status code (e.g. request timeout, interrupted connection, etc), expect [`AssetReaderError::Io`].
    #[error("Encountered HTTP status {0:?} when loading asset")]
    HttpError(u16),
}

impl PartialEq for AssetReaderError {
    /// Equality comparison for `AssetReaderError::Io` is not full (only through `ErrorKind` of inner error)
    #[inline]
    fn eq(&self, other: &Self) -> bool {
        match (self, other) {

View on GitHub (pinned to 396ca72708)

Solutions

  1. Check the asset path for typos and correct file extension
  2. Confirm the file exists under the asset root for the active asset source (default assets/ or a named source)
  3. Verify the processor output exists when reading from a processed source
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at crates/bevy_asset/src/io/mod.rs:52 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/6ce4e70680d177be. Report an issue: GitHub.