Skip to content

bevy_pbr called Option::unwrap() on a None value #71

Description

@ettoreleandrotognoli

I had an issue trying to run it in web environment, bevy run is ok, but bevy run web has an error in runtime.

    let player_sprite = player_animations
        .sprite_sheet
        .with_size_hint(5970, 1426)
        .sprite3d(&mut atlas_layouts)
        .with_custom_size(Vec2::new(6., 6.));
    player.insert((
        player_sprite,
        SpritesheetAnimation::new(player_animations.idle.clone()),
    ));
panicked at /home/ettore/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_pbr-0.18.1/src/material.rs:1061:18:
called `Option::unwrap()` on a `None` value

Stack:

__wbg_new_227d7c05414eb861@http://127.0.0.1:4000/build/flappy_bird.js:1068:25
flappy_bird-500baa97e90c27f4.wasm.console_error_panic_hook::Error::new::__wbg_new_227d7c05414eb861::hd031248f2dc42f25 externref shim@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[179650]:0x3f4adef
flappy_bird-500baa97e90c27f4.wasm.console_error_panic_hook::hook::h83312b226e532eb8@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[19958]:0x237b1ad
flappy_bird-500baa97e90c27f4.wasm.core::ops::function::Fn::call::hdce34fd021cb262b@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[252277]:0x408b751
flappy_bird-500baa97e90c27f4.wasm.std::panicking::panic_with_hook::h77afe0ddfda2cb89@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[70221]:0x36f7d5e
flappy_bird-500baa97e90c27f4.wasm.std::panicking::panic_handler::{{closure}}::hf36efc37fdd11196@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[89221]:0x3a133b3
flappy_bird-500baa97e90c27f4.wasm.std::sys::backtrace::__rust_end_short_backtrace::h46ab1174c51ef229@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[247807]:0x4082473
flappy_bird-500baa97e90c27f4.wasm.__rustc[16f1505adc47261a]::rust_begin_unwind@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[135455]:0x3e021a5
flappy_bird-500baa97e90c27f4.wasm.core::panicking::panic_fmt::h6651313c3e2c6c2f@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[123272]:0x3d47665
flappy_bird-500baa97e90c27f4.wasm.core::panicking::panic::h0149fc8f1656305a@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[177905]:0x3f40130
flappy_bird-500baa97e90c27f4.wasm.core::option::unwrap_failed::h351295eb7223eb75@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[238804]:0x4067ff2
flappy_bird-500baa97e90c27f4.wasm.bevy_pbr::material::specialize_material_meshes::h2723e18c40ae1a70@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[616]:0x366881
flappy_bird-500baa97e90c27f4.wasm.bevy_ecs::system::system::System::run_without_applying_deferred::hbdbe602374721192@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[1007]:0x6ad7d9
flappy_bird-500baa97e90c27f4.wasm.bevy_ecs::schedule::executor::__rust_begin_short_backtrace::run_without_applying_deferred::h7d05f08f6c0cd0ba@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[178291]:0x3f42657
flappy_bird-500baa97e90c27f4.wasm.bevy_ecs::schedule::schedule::Schedule::run::h1f985e086b74069c@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[10738]:0x1b8cb0b
flappy_bird-500baa97e90c27f4.wasm.bevy_ecs::world::World::schedule_scope::hffb95461fabe966b@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[31896]:0x2a7615b
flappy_bird-500baa97e90c27f4.wasm.bevy_app::sub_app::SubApps::update::he5544dc984f780d8@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[28186]:0x289037c
flappy_bird-500baa97e90c27f4.wasm.bevy_app::app::App::update::h82ee17d862fd7c62@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[72464]:0x376e75f
flappy_bird-500baa97e90c27f4.wasm.<bevy_winit::state::WinitAppRunnerState as winit::application::ApplicationHandler<bevy_winit::WinitUserEvent>>::about_to_wait::hddb99cd5498d3e90@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[933]:0x62f788
flappy_bird-500baa97e90c27f4.wasm.winit::platform_impl::web::event_loop::EventLoop<T>::spawn::{{closure}}::h4bca427f8accb630@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[9582]:0x1a22e94
flappy_bird-500baa97e90c27f4.wasm.winit::platform_impl::web::event_loop::runner::Shared::handle_event::h29d9a77efd00c107@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[9884]:0x1a850f9
flappy_bird-500baa97e90c27f4.wasm.winit::platform_impl::web::event_loop::runner::Shared::request_redraw::h1d739f896a5033c0@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[17156]:0x216a9af
flappy_bird-500baa97e90c27f4.wasm.winit::platform_impl::web::web_sys::animation_frame::AnimationFrameHandler::on_animation_frame::{{closure}}::he36d5a07a759c3d1@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[144927]:0x3e5944a
flappy_bird-500baa97e90c27f4.wasm.wasm_bindgen::convert::closures::_::invoke::h931eabab982c49fc@http://127.0.0.1:4000/build/flappy_bird_bg.wasm:wasm-function[142911]:0x3e49e96
wasm_bindgen__convert__closures_____invoke__h931eabab982c49fc@http://127.0.0.1:4000/build/flappy_bird.js:1903:10
real@http://127.0.0.1:4000/build/flappy_bird.js:2186:20


flappy_bird.js:628:25
    __wbg_error_a6fa202b58aa1cd3 http://127.0.0.1:4000/build/flappy_bird.js:628
    h83312b226e532eb8 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:37204672
    hdce34fd021cb262b http://127.0.0.1:4000/build/flappy_bird_bg.wasm:67680081
    h77afe0ddfda2cb89 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:57638238
    hf36efc37fdd11196 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:60896179
    h46ab1174c51ef229 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:67642483
    rust_begin_unwind http://127.0.0.1:4000/build/flappy_bird_bg.wasm:65020325
    h6651313c3e2c6c2f http://127.0.0.1:4000/build/flappy_bird_bg.wasm:64255589
    h0149fc8f1656305a http://127.0.0.1:4000/build/flappy_bird_bg.wasm:66322736
    h351295eb7223eb75 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:67534834
    h2723e18c40ae1a70 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:3565697
    hbdbe602374721192 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:7002073
    h7d05f08f6c0cd0ba http://127.0.0.1:4000/build/flappy_bird_bg.wasm:66332247
    h1f985e086b74069c http://127.0.0.1:4000/build/flappy_bird_bg.wasm:28887819
    hffb95461fabe966b http://127.0.0.1:4000/build/flappy_bird_bg.wasm:44523867
    he5544dc984f780d8 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:42533756
    h82ee17d862fd7c62 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:58124127
    flappy_bird-500baa97e90c27f4.wasm.<bevy_winit::state::WinitAppRunnerState as winit::application::ApplicationHandler<bevy_winit::WinitUserEvent>>::about_to_wait::hddb99cd5498d3e90 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:6485896
    h4bca427f8accb630 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:27405972
    h29d9a77efd00c107 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:27807993
    h1d739f896a5033c0 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:35039663
    he36d5a07a759c3d1 http://127.0.0.1:4000/build/flappy_bird_bg.wasm:65377354
    h931eabab982c49fc http://127.0.0.1:4000/build/flappy_bird_bg.wasm:65314454
    wasm_bindgen__convert__closures_____invoke__h931eabab982c49fc http://127.0.0.1:4000/build/flappy_bird.js:1903
    real http://127.0.0.1:4000/build/flappy_bird.js:2186

So I started to use bevy_sprite3d, and it is working:

    let atlas_layout = atlas_layouts.add(TextureAtlasLayout::from_grid(
        UVec2::new(5970 / 6, 1426),
        6,
        1,
        None,
        None,
    ));
    player.insert((
        Sprite {
            image: player_animations.sprite_sheet.image().clone(),
            texture_atlas: Some(TextureAtlas {
                layout: atlas_layout,
                index: 0,
            }),
            ..default()
        },
        Sprite3d {
            pixels_per_metre: 1426. / 8.,
            alpha_mode: AlphaMode::Blend,
            unlit: true,
                ..default()
        },
        SpritesheetAnimation::new(player_animations.idle.clone()),
    ));

I'm very happy to see that the SpritesheetAnimation is compatible with the Sprite3d

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions