11 releases
Uses new Rust 2024
| new 0.2.2 | Nov 25, 2025 |
|---|---|
| 0.2.1 | Nov 25, 2025 |
| 0.1.1 | Jun 20, 2025 |
| 0.0.6 | Aug 20, 2024 |
| 0.0.3 | Jan 3, 2024 |
#1295 in Game dev
Used in bevy_web_file_drop
44KB
155 lines
bevy_blob_loader
Bevy plugin for loading assets from JavaScript blob URLs.
Should only be added when targeting the web, otherwise wasm-bindgen will panic.
lib.rs:
This crate provides a Bevy plugin for loading assets from JavaScript blob URLs. This is useful for taking input from the user within a browser, such as a file upload or drag-and-drop.
Usage
After adding [BlobLoaderPlugin] to your Bevy app, you can load assets from blob URLs like so:
use bevy::prelude::*;
use bevy_blob_loader::path::serialize_url;
fn my_system(asset_server: Res<AssetServer>) {
let blob_url = "blob:http://example.com/1234-5678-9012-3456";
// Note, we have to serialize the URL into a special format for Bevy to recognize it.
// This takes in the file extension of the asset, which Bevy uses to determine how to
// process the fetched asset.
let serialized = serialize_url(&blob_url, "png");
let handle: Handle<Image> = asset_server.load(serialized);
}
Dependencies
~27–42MB
~701K SLoC