System: Add "Skip Duplicate Frame Display" option

Skips the presentation/display of frames that are not unique.
Can be combined with driver-level frame generation to increase
perceptible frame rate. Can result in worse frame pacing, and is
not compatible with syncing to host refresh.
This commit is contained in:
Stenzek
2024-05-19 18:15:01 +10:00
parent 7b8f9506c9
commit 5b4f74122c
8 changed files with 97 additions and 51 deletions

View File

@@ -68,10 +68,10 @@
<string>Latency Control</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QCheckBox" name="vsync">
<item row="1" column="1">
<widget class="QCheckBox" name="preFrameSleep">
<property name="text">
<string>Vertical Sync (VSync)</string>
<string>Reduce Input Latency</string>
</property>
</widget>
</item>
@@ -82,6 +82,13 @@
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QCheckBox" name="vsync">
<property name="text">
<string>Vertical Sync (VSync)</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="optimalFramePacing">
<property name="text">
@@ -89,23 +96,23 @@
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="preFrameSleep">
<item row="2" column="0">
<widget class="QCheckBox" name="skipPresentingDuplicateFrames">
<property name="text">
<string>Reduce Input Latency</string>
<string>Skip Duplicate Frame Display</string>
</property>
</widget>
</item>
<item row="2" column="0" colspan="2">
<layout class="QHBoxLayout" name="preFrameSleepBufferLayout" stretch="0,1">
<item>
<item row="2" column="1">
<layout class="QFormLayout" name="formLayout_3">
<item row="0" column="0">
<widget class="QLabel" name="preFrameSleepBufferLabel">
<property name="text">
<string>Frame Time Buffer:</string>
</property>
</widget>
</item>
<item>
<item row="0" column="1">
<widget class="QDoubleSpinBox" name="preFrameSleepBuffer">
<property name="suffix">
<string> Milliseconds</string>