fix bug in d3d alternate vsync + frame advance
This commit is contained in:
parent
17cae0ad1c
commit
f1ea49133d
|
@ -784,6 +784,14 @@ namespace BizHawk.Client.EmuHawk
|
||||||
//only used by alternate vsync
|
//only used by alternate vsync
|
||||||
var dx9 = GlobalWin.GL as BizHawk.Bizware.BizwareGL.Drivers.SlimDX.IGL_SlimDX9;
|
var dx9 = GlobalWin.GL as BizHawk.Bizware.BizwareGL.Drivers.SlimDX.IGL_SlimDX9;
|
||||||
|
|
||||||
|
//ok, now this is a bit undesireable.
|
||||||
|
//maybe the user wants vsync, but not vsync throttle.
|
||||||
|
//this makes sense... but we dont have the infrastructure to support it now (we'd have to enable triple buffering or something like that)
|
||||||
|
//so what we're gonna do is disable vsync no matter what if throttling is off, and maybe nobody will notice.
|
||||||
|
//update 26-mar-2016: this upsets me. When fastforwarding and skipping frames, vsync should still work. But I'm not changing it yet
|
||||||
|
if (Global.DisableSecondaryThrottling)
|
||||||
|
vsync = false;
|
||||||
|
|
||||||
//for now, it's assumed that the presentation panel is the main window, but that may not always be true
|
//for now, it's assumed that the presentation panel is the main window, but that may not always be true
|
||||||
bool alternateVsync = false;
|
bool alternateVsync = false;
|
||||||
if (dx9 != null)
|
if (dx9 != null)
|
||||||
|
@ -797,14 +805,6 @@ namespace BizHawk.Client.EmuHawk
|
||||||
//TODO - whats so hard about triple buffering anyway? just enable it always, and change api to SetVsync(enable,throttle)
|
//TODO - whats so hard about triple buffering anyway? just enable it always, and change api to SetVsync(enable,throttle)
|
||||||
//maybe even SetVsync(enable,throttlemethod) or just SetVsync(enable,throttle,advanced)
|
//maybe even SetVsync(enable,throttlemethod) or just SetVsync(enable,throttle,advanced)
|
||||||
|
|
||||||
//ok, now this is a bit undesireable.
|
|
||||||
//maybe the user wants vsync, but not vsync throttle.
|
|
||||||
//this makes sense... but we dont have the infrastructure to support it now (we'd have to enable triple buffering or something like that)
|
|
||||||
//so what we're gonna do is disable vsync no matter what if throttling is off, and maybe nobody will notice.
|
|
||||||
//update 26-mar-2016: this upsets me. When fastforwarding and skipping frames, vsync should still work. But I'm not changing it yet
|
|
||||||
if (Global.DisableSecondaryThrottling)
|
|
||||||
vsync = false;
|
|
||||||
|
|
||||||
if (LastVsyncSetting != vsync || LastVsyncSettingGraphicsControl != presentationPanel.GraphicsControl)
|
if (LastVsyncSetting != vsync || LastVsyncSettingGraphicsControl != presentationPanel.GraphicsControl)
|
||||||
{
|
{
|
||||||
if (LastVsyncSetting == null && vsync)
|
if (LastVsyncSetting == null && vsync)
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue