Trouv / bevy_ecs_ldtk

ECS-friendly ldtk plugin for bevy, leveraging bevy_ecs_tilemap
Other
629 stars 74 forks source link

Bevy 0.12 support #259

Closed Rigidity closed 5 months ago

Rigidity commented 8 months ago

Hey, Bevy 0.12 was recently released, I'm wondering if there's any current plans for this crate to support it?

Trouv commented 8 months ago

Yes, we will support it. It tends to take a little longer for this plugin to upgrade since it depends on bevy_ecs_tilemap upgrading. That plugin tends to be a little slow to upgrade on its own too since it does so much custom rendering stuff.

So this depends on https://github.com/StarArawn/bevy_ecs_tilemap/issues/488

focustense commented 6 months ago

Will there be a change log, migration guide, anything of that sort? I presume that the update for bevy 0.12 will also include the rearchitecting of all the various level components.

Replacing all the code dependent on Handle<&LdtkLevel> with the new loaded-level system is going to be the biggest one for me, at least. But in general there seems to be more breaking changes than I recall from previous updates.

It looks like the bevy_ecs_tilemap update is scheduled to drop very soon; 4 days ago it was announced "in a few days".

Trouv commented 6 months ago

I've already written a migration guide in the new WIP bevy_ecs_ldtk book: https://trouv.github.io/bevy_ecs_ldtk/latest/how-to-guides/migration-guides/migrate-from-0.8-to-0.9.html

Hope this helps!

Microwonk commented 6 months ago

I am looking for version 0.9.0, has it been released yet or is it in progress to migrate to bevy 0.12.0?

Trouv commented 6 months ago

I am looking for version 0.9.0, has it been released yet or is it in progress to migrate to bevy 0.12.0?

We're currently waiting for bevy_ecs_tilemap version 0.12 to release. However, both plugins have unreleased upgrades to the new version in their repositories. You can add this to your Cargo.toml to try it out:

[patch.crates-io]
bevy_ecs_ldtk = { git = "https://github.com/trouv/bevy_ecs_ldtk", branch = "feat/bevy-0.12" }
bevy_ecs_tilemap = { git = "https://github.com/StarArawn/bevy_ecs_tilemap", branch = "main" }
darkautism commented 6 months ago

Crashed if i use Tiles layer (in branch = "feat/bevy-0.12") image

saraqael.js:424 panicked at C:\Users\kautism\.cargo\registry\src\index.crates.io-6f17d22bba15001f\wgpu-hal-0.17.2\src\gles\queue.rs:548:29:
index out of bounds: the len is 6 but the index is 6

Stack:

Error
    at imports.wbg.__wbg_new_abda76e883ba8a5f (http://127.0.0.1:5500/out/saraqael.js:408:21)
    at console_error_panic_hook::hook::h216123a00a7fa426 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[16751]:0x1628571)
    at core::ops::function::Fn::call::heca87a3323fe8471 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[95974]:0x1ecf379)
    at std::panicking::rust_panic_with_hook::h62090d3fc0630473 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[31276]:0x1b3a70f)
    at std::panicking::begin_panic_handler::{{closure}}::h823c80ef219a166d (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[35357]:0x1c02204)
    at std::sys_common::backtrace::__rust_end_short_backtrace::hcc7222b556723586 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[94603]:0x1ecc3c9)
    at rust_begin_unwind (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[49196]:0x1d9dac1)
    at core::panicking::panic_fmt::hd79411a297d06dc8 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[50820]:0x1db8078)
    at core::panicking::panic_bounds_check::hc893c80ea14e0ded (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[41262]:0x1cdaa00)
    at wgpu_hal::gles::queue::<impl wgpu_hal::gles::Queue>::process::h424cad8655592a81 (http://127.0.0.1:5500/out/Saraqael_bg.wasm:wasm-function[548]:0x293018)

imports.wbg.__wbg_error_f851667af71bcfc6 @ saraqael.js:424
$console_error_panic_hook::hook::h216123a00a7fa426 @ Saraqael_bg.wasm:0x162864f
$core::ops::function::Fn::call::heca87a3323fe8471 @ Saraqael_bg.wasm:0x1ecf379
$std::panicking::rust_panic_with_hook::h62090d3fc0630473 @ Saraqael_bg.wasm:0x1b3a70f
$std::panicking::begin_panic_handler::{{closure}}::h823c80ef219a166d @ Saraqael_bg.wasm:0x1c02204
$std::sys_common::backtrace::__rust_end_short_backtrace::hcc7222b556723586 @ Saraqael_bg.wasm:0x1ecc3c9
$rust_begin_unwind @ Saraqael_bg.wasm:0x1d9dac1
$core::panicking::panic_fmt::hd79411a297d06dc8 @ Saraqael_bg.wasm:0x1db8078
$core::panicking::panic_bounds_check::hc893c80ea14e0ded @ Saraqael_bg.wasm:0x1cdaa00
$wgpu_hal::gles::queue::<impl wgpu_hal::gles::Queue>::process::h424cad8655592a81 @ Saraqael_bg.wasm:0x293018
$wgpu_hal::gles::queue::<impl wgpu_hal::Queue<wgpu_hal::gles::Api> for wgpu_hal::gles::Queue>::submit::hf837e0c883acd77e @ Saraqael_bg.wasm:0xdebaa6
$wgpu_core::device::queue::<impl wgpu_core::global::Global<G>>::queue_submit::hcb9ce33e2680065f @ Saraqael_bg.wasm:0x1c8d44
$<T as wgpu::context::DynContext>::queue_submit::h9b937fafd413d4a0 @ Saraqael_bg.wasm:0x11cf3cc
$bevy_ecs_tilemap::render::texture_array_cache::TextureArrayCache::queue::hfeaa81fe478aeebd @ Saraqael_bg.wasm:0x5c9948
$core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut::hb0f051fe38298b53 @ Saraqael_bg.wasm:0x435fa9
$bevy_ecs::system::system::System::run::h6e13fe92d51c2188 @ Saraqael_bg.wasm:0x5e2fc6
$<bevy_ecs::schedule::executor::single_threaded::SingleThreadedExecutor as bevy_ecs::schedule::executor::SystemExecutor>::run::h14c0b9dcb80699a9 @ Saraqael_bg.wasm:0x8a8f2f
$bevy_ecs::schedule::schedule::Schedule::run::hc7ba69598a02b48a @ Saraqael_bg.wasm:0x1a75bbb
$bevy_ecs::world::World::schedule_scope::h8eca809b5e2e5810 @ Saraqael_bg.wasm:0xcbc55c
$bevy_app::app::App::update::hb5629bf8ccecaf66 @ Saraqael_bg.wasm:0x1aa7237
$winit::platform_impl::platform::event_loop::EventLoop<T>::spawn::{{closure}}::h8890836b8915c2b1 @ Saraqael_bg.wasm:0x20c234
$winit::platform_impl::platform::event_loop::runner::Shared<T>::handle_event::h25ead634235830bc @ Saraqael_bg.wasm:0xda4c9b
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x1007f79
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::run_until_cleared::h979e40fe806e7c76 @ Saraqael_bg.wasm:0x10080fd
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::{{closure}}::hdbceb757dc07c477 @ Saraqael_bg.wasm:0x1daa0fb
$<dyn core::ops::function::FnMut<()>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h8db34be75c2d3d68 @ Saraqael_bg.wasm:0x1e07b61
__wbg_adapter_49 @ saraqael.js:222
real @ saraqael.js:203
requestAnimationFrame (非同步)
(匿名) @ saraqael.js:929
handleError @ saraqael.js:239
imports.wbg.__wbg_requestAnimationFrame_74309aadebde12fa @ saraqael.js:928
$web_sys::features::gen_Window::Window::request_animation_frame::h756e8b8bb647ab1a @ Saraqael_bg.wasm:0x1da8617
$winit::platform_impl::platform::backend::timeout::AnimationFrameRequest::new::hb4a1b9749bc118e9 @ Saraqael_bg.wasm:0x19bad9c
$winit::platform_impl::platform::event_loop::runner::Shared<T>::apply_control_flow::hc9bbdb183cc84c0d @ Saraqael_bg.wasm:0xd4cfa6
$winit::platform_impl::platform::event_loop::runner::Shared<T>::set_listener::h489241eccc8126da @ Saraqael_bg.wasm:0xc734eb
$winit::platform_impl::platform::event_loop::EventLoop<T>::spawn::hb5f066c059d5ded3 @ Saraqael_bg.wasm:0x1abb3c1
$winit::platform_impl::platform::event_loop::EventLoop<T>::run::h4745b14656003941 @ Saraqael_bg.wasm:0x1e07a6d
$bevy_winit::winit_runner::hb8de7e41ad8f8aef @ Saraqael_bg.wasm:0x619202
$core::ops::function::FnOnce::call_once{{vtable.shim}}::h243758fb6e5290dc @ Saraqael_bg.wasm:0x1dd7f22
$bevy_app::app::App::run::h117a1564b880a0a0 @ Saraqael_bg.wasm:0x176d3ed
$saraqael::main::hf9e523fea7ed4dd9 @ Saraqael_bg.wasm:0x1ad02f
$std::sys_common::backtrace::__rust_begin_short_backtrace::h8e1935b31fbd0e2d @ Saraqael_bg.wasm:0x1ecc485
$std::rt::lang_start::{{closure}}::hf5bb013422caf3f1 @ Saraqael_bg.wasm:0x1ebe48a
$std::rt::lang_start_internal::h5756fb07f437f51d @ Saraqael_bg.wasm:0x19f7374
$std::rt::lang_start::h1669a140178c7502 @ Saraqael_bg.wasm:0x1dca40a
$main @ Saraqael_bg.wasm:0x1eb80b8
$__wbindgen_start @ Saraqael_bg.wasm:0x1ebdf1a
__wbg_finalize_init @ saraqael.js:1928
__wbg_init @ saraqael.js:1964
await in __wbg_init (非同步)
(匿名) @ index.html:71
Saraqael_bg.wasm:0x1ed256d Uncaught RuntimeError: unreachable
    at __rust_start_panic (Saraqael_bg.wasm:0x1ed256d)
    at rust_panic (Saraqael_bg.wasm:0x1ebde30)
    at std::panicking::rust_panic_with_hook::h62090d3fc0630473 (Saraqael_bg.wasm:0x1b3a73f)
    at std::panicking::begin_panic_handler::{{closure}}::h823c80ef219a166d (Saraqael_bg.wasm:0x1c02204)
    at std::sys_common::backtrace::__rust_end_short_backtrace::hcc7222b556723586 (Saraqael_bg.wasm:0x1ecc3c9)
    at rust_begin_unwind (Saraqael_bg.wasm:0x1d9dac1)
    at core::panicking::panic_fmt::hd79411a297d06dc8 (Saraqael_bg.wasm:0x1db8078)
    at core::panicking::panic_bounds_check::hc893c80ea14e0ded (Saraqael_bg.wasm:0x1cdaa00)
    at wgpu_hal::gles::queue::<impl wgpu_hal::gles::Queue>::process::h424cad8655592a81 (Saraqael_bg.wasm:0x293018)
    at wgpu_hal::gles::queue::<impl wgpu_hal::Queue<wgpu_hal::gles::Api> for wgpu_hal::gles::Queue>::submit::hf837e0c883acd77e (Saraqael_bg.wasm:0xdebaa6)

If i remove all of tiles, it will not happened.

image

Just simply add a tile cause this bug.

Trouv commented 6 months ago

Crashed if i use Tiles layer

That's a strange one. Could you try running some of the bevy_ecs_ldtk examples on the 0.12 branch?

darkautism commented 6 months ago

Ok, I test other pngs works. Only my png crash. I have no idea way. DOORS

This is asset i drawing which cause crash.

VergilUa commented 5 months ago

Tried today with Bevy 0.12.1, LDTK 1.5.3, ecs_tilemap 0.12.0, and feat/bevy-0.12. So far so good. Granted, I've got small project, but it just works.

Looking forward to crate upload to drop branches.

Trouv commented 5 months ago

For those following this issue, I am merging the feat/bevy-0.12 branch to simplify the repo a bit. Also, bevy_ecs_tilemap's 0.12 update has been merged (not released) for a while now so I feel comfortable following suit. So, one last time, before bevy_ecs_tilemap version 0.12 and bevy_ecs_ldtk version 0.9 release, here is the patch you'll need to add to your Cargo.toml to use this plugin with bevy version 0.12:

[patch.crates-io]
bevy_ecs_ldtk = { git = "https://github.com/trouv/bevy_ecs_ldtk", branch = "main" }
bevy_ecs_tilemap = { git = "https://github.com/StarArawn/bevy_ecs_tilemap", branch = "main" }

If you're upgrading from a previous version of this plugin, be aware that there are many breaking changes in the upcoming release. If you need it, here is the relevant migration guide: https://trouv.github.io/bevy_ecs_ldtk/main/how-to-guides/migration-guides/migrate-from-0.8-to-0.9.html