bevy_shadertoy_wgsl
bevy_shadertoy_wgsl copied to clipboard
Example in the main README file does not run
Running the example in the README file cargo run --release --features bevy/dynamic --example paint_streams
does not run and produces the following error:
thread 'main' panicked at 'internal error: entered unreachable code: module is not valid', /Users/simone/.cargo/registry/src/github.com-1ecc6299db9ec823/naga-0.9.0/src/back/msl/writer.rs:182:29
stack backtrace:
0: _rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::unreachable_display
3: <naga::back::msl::writer::TypeContext as core::fmt::Display>::fmt
4: core::fmt::write
5: naga::back::msl::writer::Writer<W>::write_functions
6: naga::back::msl::writer::Writer<W>::write
7: naga::back::msl::write_string
8: wgpu_hal::metal::device::<impl wgpu_hal::metal::Device>::load_shader
9: wgpu_hal::metal::device::<impl wgpu_hal::Device<wgpu_hal::metal::Api> for wgpu_hal::metal::Device>::create_compute_pipeline
10: wgpu_core::device::Device<A>::create_compute_pipeline
11: wgpu_core::device::<impl wgpu_core::hub::Global<G>>::device_create_compute_pipeline
12: <wgpu::backend::direct::Context as wgpu::Context>::device_create_compute_pipeline
13: wgpu::Device::create_compute_pipeline
14: bevy_render::render_resource::pipeline_cache::PipelineCache::process_queue
15: <bevy_ecs::system::function_system::FunctionSystem<In,Out,Param,Marker,F> as bevy_ecs::system::system::System>::run_unsafe
16: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
17: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
18: async_task::raw::RawTask<F,T,S>::run
19: async_executor::Executor::try_tick
20: std::thread::local::LocalKey<T>::with
21: <bevy_ecs::schedule::executor_parallel::ParallelExecutor as bevy_ecs::schedule::executor::ParallelSystemExecutor>::run_systems
22: <bevy_ecs::schedule::stage::SystemStage as bevy_ecs::schedule::stage::Stage>::run
23: <bevy_render::RenderPlugin as bevy_app::plugin::Plugin>::build::{{closure}}
24: bevy_app::app::App::update
25: <winit::platform_impl::platform::app_state::EventLoopHandler<T> as winit::platform_impl::platform::app_state::EventHandler>::handle_nonuser_event
26: winit::platform_impl::platform::app_state::Handler::handle_nonuser_event
27: winit::platform_impl::platform::app_state::AppState::cleared
28: winit::platform_impl::platform::observer::control_flow_end_handler
29: <unknown>
30: <unknown>
31: <unknown>
32: <unknown>
33: <unknown>
34: <unknown>
35: <unknown>
36: <unknown>
37: <unknown>
38: <unknown>
39: objc::rc::autorelease::autoreleasepool
40: winit::platform_impl::platform::event_loop::EventLoop<T>::run_return
41: winit::platform_impl::platform::event_loop::EventLoop<T>::run
42: winit::event_loop::EventLoop<T>::run
43: bevy_winit::run
44: bevy_winit::winit_runner_with
45: core::ops::function::Fn::call
46: bevy_app::app::App::run
47: liquid_toy::main
Tested on MacBook Pro with M1 Max chip, using Rust version 1.64.0 (a55dd71d5 2022-09-19)
.
The same error is printed out when trying to run the other examples.
Same issue on macbook, however I get the problem with naga 0.9.0
INFO bevy_render::renderer: AdapterInfo { name: "Apple M1", vendor: 0, device: 0, device_type: IntegratedGpu, backend: Metal }
common: ./examples/paint_streams/common.wgsl
./assets/shaders/paint_streams/image.wgsl
common: ./examples/paint_streams/common.wgsl
./assets/shaders/paint_streams/buffer_a.wgsl
common: ./examples/paint_streams/common.wgsl
./assets/shaders/paint_streams/buffer_b.wgsl
common: ./examples/paint_streams/common.wgsl
./assets/shaders/paint_streams/buffer_c.wgsl
common: ./examples/paint_streams/common.wgsl
./assets/shaders/paint_streams/buffer_d.wgsl
WARN naga::back::msl::writer: Storage access for [5] (name ''): (empty)
thread 'main' panicked at 'internal error: entered unreachable code: module is not valid', /usr/local/.cargo/registry/src/github.com-1ecc6299db9ec823/naga-0.9.0/src/back/msl/writer.rs:182:29
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
dry_ice example doesn't run too. The same problem with naga. Maybe upgrading to 0.10.0 will solve this problem?