Skip to content

Panic when runing bevy with RenderDoc if wayland enabled: Vulkan driver does not support VK_KHR_wayland_surface #21292

@beicause

Description

@beicause

Bevy version and features

  • 0.17.rc2
  • default features + wayland

Relevant system information

2025-09-30T04:32:32.111371Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Linux (EndeavourOS rolling)", kernel: "6.16.8-arch3-1", cpu: "AMD Ryzen 7 4800U with Radeon Graphics", core_count: "8", memory: "15.0 GiB" }
2025-09-30T04:32:32.156152Z  INFO bevy_render::renderer: AdapterInfo { name: "AMD Radeon Graphics (RADV RENOIR)", vendor: 4098, device: 5686, device_type: IntegratedGpu, driver: "radv", driver_info: "Mesa 25.2.3-arch1.2", backend: Vulkan }
2025-09-30T04:32:32.226761Z  INFO bevy_render::batching::gpu_preprocessing: GPU preprocessing is fully supported on this device.

What you did

Enable bevy wayland feature and run renderdoccmd capture target/debug/xxxgame

What went wrong

 2025-09-30T04:38:30.251007Z  INFO bevy_render::batching::gpu_preprocessing: GPU preprocessing is fully supported on this device.
2025-09-30T04:38:30.257075Z  INFO bevy_winit::system: Creating new window Bevy game (0v0)
thread 'Compute Task Pool (5)' (461713) panicked at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_render-0.17.0-rc.2/src/view/window/mod.rs:324:26:
Failed to create wgpu surface: CreateSurfaceError { inner: Hal(FailedToCreateSurfaceForAnyBackend({Vulkan: InstanceError { message: "Vulkan driver does not support VK_KHR_wayland_surface", source: None }})) }
  stack backtrace:
0: __rustc::rust_begin_unwind
at /rustc/0be8e16088894483a7012c5026c3247c14a0c3c2/library/std/src/panicking.rs:698:5
1: core::panicking::panic_fmt
at /rustc/0be8e16088894483a7012c5026c3247c14a0c3c2/library/core/src/panicking.rs:75:14
2: core::result::unwrap_failed
at /rustc/0be8e16088894483a7012c5026c3247c14a0c3c2/library/core/src/result.rs:1855:5
3: core::result::Result<T,E>::expect
at /home/luo/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/result.rs:1178:23
4: bevy_render::view::window::create_surfaces::{{closure}}
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_render-0.17.0-rc.2/src/view/window/mod.rs:324:26
5: hashbrown::map::Entry<K,V,S,A>::or_insert_with
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/src/map.rs:3584:50
6: bevy_render::view::window::create_surfaces
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_render-0.17.0-rc.2/src/view/window/mod.rs:313:14
 7: core::ops::function::FnMut::call_mut
at /home/luo/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:166:5
8: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
at /home/luo/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:298:21
9: <Func as bevy_ecs::system::function_system::SystemParamFunction<fn(F0,F1,F2,F3,F4) .> Out>>::run::call_inner
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_ecs-0.17.0-rc.2/src/system/function_system.rs:926:21
10: <Func as bevy_ecs::system::function_system::SystemParamFunction<fn(F0,F1,F2,F3,F4) .> Out>>::run
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_ecs-0.17.0-rc.2/src/system/function_system.rs:929:17
11: <bevy_ecs::system::function_system::FunctionSystem<Marker,Out,F> as bevy_ecs::system::system::System>::run_unsafe
at /home/luo/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_ecs-0.17.0-rc.2/src/system/function_system.rs:711:29
 note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Encountered a panic in system `bevy_render::view::window::create_surfaces`!

Additional information

The issue doesn't happend if I run RenderDoc with bevy/wayland disabled, or run bevy with wayland enabled(not using RenderDoc).

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-RenderingDrawing game state to the screenC-BugAn unexpected or incorrect behaviorC-Machine-SpecificThis bug is isolated to specific hardware or driver configurationsO-LinuxSpecific to the Linux desktop operating systemP-CrashA sudden unexpected crashS-BlockedThis cannot move forward until something else changes

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions