`No surface found for window.` in all examples
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 4d 8m
- Merged PRs (30d)
- 147
Description
I'm getting a `No surface found for window` in all examples for master, however if I checkout 0.5.0, this issue does not occur.
## Bevy version
`72c888feea2d114d6719da515e9859f76e6b1f11` - freshly pulled master
## Operating system & version
Arch Linux, 5700XT using amdgpu (mesa 21.2.4-1), testing on sway(wayland) and openbox(x11)
## What you did
Briefly...
```
> git clone https://github.com/bevyengine/bevy.git
> cd bevy
> cargo run --example mesh
> cargo run --example 3d_scene
```
## What you expected to happen
Rendering etc
## What actually happened
Seems to render one frame, then crashes out with:
```
thread 'main' panicked at 'No surface found for window.', crates/bevy_wgpu/src/renderer/wgpu_render_resource_context.rs:372:14
```
Example of full logs for 3d_scene:
```
2021-11-27T08:27:27.203322Z INFO winit::platform_impl::platform::x11::window: Guessed window scale factor: 1.0833333333333333
UNASSIGNED-BestPractices-vkCreateInstance-specialuse-extension-debugging(WARN / SPEC): msgNum: -2111305990 - Validation Warning: [ UNASSIGNED-BestPractices-vkCreateInstance-specialuse-extension-debugging ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_INSTANCE; | MessageID = 0x822806fa | CreateInstance(): Attempting to enable extension VK_EXT_debug_utils, but this extension is intended to support use by applications when debugging and it is strongly recommended that it be otherwise avoided.
Objects: 1
[0] 0, type: 1, name: NULL
UNASSIGNED-BestPractices-vkCreateInstance-deprecated-extension(WARN / SPEC): msgNum: -1861097675 - Validation Warning: [ UNASSIGNED-BestPractices-vkCreateInstance-deprecated-extension ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_INSTANCE; | MessageID = 0x9111e735 | CreateInstance(): Attempting to enable deprecated extension VK_KHR_get_physical_device_properties2, but this extension has been promoted to VK_VERSION_1_1.
Objects: 1
[0] 0, type: 1, name: NULL
2021-11-27T08:27:27.388847Z INFO naga::front::spv: Generated by 524296 version 10000
2021-11-27T08:27:27.389734Z INFO naga::front::spv: Patching...
2021-11-27T08:27:27.390096Z INFO naga::front::spv: Generated by 524296 version 10000
2021-11-27T08:27:27.396150Z INFO naga::front::spv: Patching...
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 0 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 1 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 0 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 2 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 0 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory(WARN / PERF): msgNum: 67123586 - Validation Performance Warning: [ UNASSIGNED-BestPractices-vkCreateRenderPass-image-requires-memory ] Object 0: handle = 0x55a690b90ea0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x4003982 | Attachment 2 in the VkRenderPass is a multisampled image with 4 samples, but it uses loadOp/storeOp which requires accessing data from memory. Multisampled images should always be loadOp = CLEAR or DONT_CARE, storeOp = DONT_CARE. This allows the implementation to use lazily allocated memory effectively.
Objects: 1
[0] 0x55a690b90ea0, type: 3, name: NULL
UNASSIGNED-BestPractices-SuboptimalSwapchain(WARN / PERF): msgNum: 1142383795 - Validation Performance Warning: [ UNASSIGNED-BestPractices-SuboptimalSwapchain ] Object 0: handle = 0x210d07000000003a, type = VK_OBJECT_TYPE_SWAPCHAIN_KHR; | MessageID = 0x441764b3 | vkQueuePresentKHR: VkSwapchainKHR 0x210d07000000003a[] :VK_SUBOPTIMAL_KHR was returned. VK_SUBOPTIMAL_KHR - Presentation will still succeed, subject to the window resize behavior, but the swapchain is no longer configured optimally for the surface it targets. Applications should query updated surface information and recreate their swapchain at the next convenient opportunity.
Objects: 1
[0] 0x210d07000000003a, type: 1000001000, name: NULL
thread 'main' panicked at 'No surface found for window.', crates/bevy_wgpu/src/renderer/wgpu_render_resource_context.rs:372:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
```
Contributor guide
Assessment
This issue has not been assessed yet.