-
Notifications
You must be signed in to change notification settings - Fork 438
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Programs hang on Swapchain recreation when window is resized #959
Comments
Okay, So, I just found the updated examples in examples folder, Let me try that code and hopefully that fixes the problem. |
The new examples don't fix the problem. The window still hangs just like it did before. |
I can confirm this error on two different systems - both Arch Linux under i3. The repository triangle example (or in fact any example with a window) fails with repository HEAD as well as crates.io vulkano directly after window generation. Since tiling WMs resize immediately after window creation I introduced an exception for the example window leading to the example crashing on manual window resize and/or move. Here is the stack trace (by breaking on rust_begin_unwind in gdb):
The changes tested by ishanjain28 (new future per loop iteration) indeed run without any problems on both systems. |
Hi, I am running into a problem with running vulkano programs on Windows.
My code and the code in examples compiles and starts just fine but when I do anything that'll need a recreation of swapchain, For example, Resizing a window. The window just hangs forever.
The code in examples does not works as it's supposed to on Windows and Linux.
Specifically, This code.
When the window is resized, The
then_signal_fence_and_flush
method returns aFlushError::OutOfDate
error. Unwrapping the result directly crashes the program upon window resize.I tried to make it work with the following code.
Since,
match
takes ownership of prev_frame_end, I have to create it on each iteration. This code seems to be working perfectly fine on Linux with no issues whatsoever but on windows this code causes the window to hang forever. The program doesn't starts consuming more ram and there is no increase in CPU Usage(It stays about the same even when the window is hung).I just couldn't figure out any way to create
prev_frame_end
only one time and checking for error returned bythen_signal_fence_and_flush
without taking ownership ofprev_frame_end
, So I figured creating an issue on repo might be a good idea.More information, I was using discrete GPUs(gtx 960M) to run the programs.
Output of
vulkaninfo
on Windows: https://hastebin.com/dezofezuda.sqlWindow version: WIndows 10 Home 1703
Nvidia Driver version 397.31
My full modified program: https://hastebin.com/acurayevax.php
The text was updated successfully, but these errors were encountered: