• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › Development Discussion v
« Previous 1 ... 19 20 21 22 23 ... 115 Next »

Would anybody be willing to explain why this quirk with Vulkan and Vsync occurs?
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Would anybody be willing to explain why this quirk with Vulkan and Vsync occurs?
09-22-2017, 03:54 PM
#1
garbageboy
Unregistered
 
Question 
I'll preface this by saying I've already submitted a bug report and It's been marked as working as intended and I do not have any expectations for it to be fixed.

I am though, curious as to why it's happening under certain circumstances and didn't want to bloat the bug tracker with questions so I figured this might be a better avenue for my curiosity.

Original bug report was here, for reference; https://bugs.dolphin-emu.org/issues/10555#change-730796


My big question is why this occurs with both exclusive fullscreen and borderless fullscreen but not when rendering in a regular window.

I was under the impression that borderless fullscreen was a screen-sized window with no borders, and so, would behave like one. My wild guess as to why this only occurred with fullscreen is if Vsync was only enabled during fullscreen. But if that was the case, it doesn't line up with the problem also occurring in borderless fullscreen.

I'm clearly missing something here, maybe even everything! I would really appreciate it if somebody would explain what I'm missing.
Reply
09-23-2017, 11:14 PM (This post was last modified: 09-23-2017, 11:16 PM by mstreurman.)
#2
mstreurman Offline
Above and Beyond
*******
Posts: 1,239
Threads: 11
Joined: Nov 2015
(09-22-2017, 03:54 PM)garbageboy Wrote: I'll preface this by saying I've already submitted a bug report and It's been marked as working as intended and I do not have any expectations for it to be fixed.

I am though, curious as to why it's happening under certain circumstances and didn't want to bloat the bug tracker with questions so I figured this might be a better avenue for my curiosity.

Original bug report was here, for reference; https://bugs.dolphin-emu.org/issues/10555#change-730796


My big question is why this occurs with both exclusive fullscreen and borderless fullscreen but not when rendering in a regular window.

I was under the impression that borderless fullscreen was a screen-sized window with no borders, and so, would behave like one. My wild guess as to why this only occurred with fullscreen is if Vsync was only enabled during fullscreen. But if that was the case, it doesn't line up with the problem also occurring in borderless fullscreen.

I'm clearly missing something here, maybe even everything! I would really appreciate it if somebody would explain what I'm missing.

Did you read the actual comment at your issue? It says that to make it go faster they need to disable VSYNC and a recreate the swap chain to do this... so it is a technical limitation on how Vulkan handles the switching VSYNC on and off. As far as I can see it.
Check my profile for up to date specs.
Find
Reply
09-24-2017, 03:38 PM
#3
garbageboy
Unregistered
 
(09-23-2017, 11:14 PM)mstreurman Wrote: Did you read the actual comment at your issue? It says that to make it go faster they need to disable VSYNC and a recreate the swap chain to do this... so it is a technical limitation on how Vulkan handles the switching VSYNC on and off. As far as I can see it.

Yes, I read and understood the comment as "in order to disable the frame limiter, vsync has to be disabled which means they have to reset the swap chain which causes the black screen". My question is about why it doesn't occur in windowed mode, does occur in borderless fullscreen, and does occur in exclusive fullscreen.
Reply
09-25-2017, 01:38 AM
#4
Helios Offline
Stellaaaaaaa
**********
Developers (Some Administrators and Super Moderators)
Posts: 4,395
Threads: 15
Joined: May 2012
It can potentially flicker. Doesn't mean it always will.
Find
Reply
09-25-2017, 08:48 AM
#5
garbageboy
Unregistered
 
(09-25-2017, 01:38 AM)Helios Wrote: It can potentially flicker. Doesn't mean it always will.

For me it consistently flickers 100% of the time in fullscreen and borderless, and 0% of the time in windowed mode. There has gotta be something else going on here.
Reply
09-25-2017, 09:53 AM
#6
AnyOldName3 Offline
First Random post over 9000
*******
Posts: 3,508
Threads: 1
Joined: Feb 2012
Talk to the people who wrote your GPU drivers. They're the only people who might know. They also won't have time to talk to you.
OS: Windows 10 64 bit Professional
CPU: AMD Ryzen 5900X
RAM: 16GB
GPU: Radeon Vega 56
Find
Reply
09-25-2017, 10:16 AM
#7
garbageboy
Unregistered
 
(09-25-2017, 09:53 AM)AnyOldName3 Wrote: Talk to the people who wrote your GPU drivers. They're the only people who might know. They also won't have time to talk to you.

I don't think it's outrageous to think that if a Dolphin developer knows why this very specific quirk occurs and what is happening to make it occur would also know why it only happens in both fullscreen and borderless fullscreen.
Reply
09-25-2017, 12:33 PM
#8
AnyOldName3 Offline
First Random post over 9000
*******
Posts: 3,508
Threads: 1
Joined: Feb 2012
Maybe the picture's just bigger when it's full screen, so there's more work to do. Maybe there's some optimisation that can be applied when the resolution matches the screen resolution but causes the flicker you see when the swap chain is rebuilt. Maybe an intern was left in charge of something they shouldn't have been, and for no particular reason, a different code path is taken when commands are issued which spell out that intern's name. The behaviour you're seeing is down to what the driver is doing. When a developer writes something, they only know what's happening as far as what the API and its documentation say happens. If it says 'recreating the swap chain may cause a visible flicker', then they know to expect a flicker. If it goes into more detail or if they've investigated further (for example because they find the flicker annoying and as they use open-source drivers they think they can change their driver to get rid of it) they might know more, but in the same way that you don't necessarily need to know how much benzene is added to the petrol at your local fuel station in order to fill up your car as the car takes petrol and the fuel station sells petrol, developers don't necessarily know anything beyond the API they're programming for, such as a particular implementation's inner details.
OS: Windows 10 64 bit Professional
CPU: AMD Ryzen 5900X
RAM: 16GB
GPU: Radeon Vega 56
Find
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode