HostDisplay: Add threaded presentation for Vulkan renderer

Can add a significant speedup for fast forward. Automatically disabled
when vsync is enabled.
This commit is contained in:
Connor McLaughlin
2020-12-26 23:22:24 +10:00
parent 1a6a14fcd4
commit 702ed21207
29 changed files with 241 additions and 76 deletions

View File

@ -153,6 +153,8 @@
<string name="main_activity_copy">Copy</string>
<string name="settings_gpu_thread">Threaded GPU Rendering</string>
<string name="settings_summary_gpu_thread">Uses a second thread for drawing graphics. Currently only available for the software renderer, but can provide a significant speed improvement, and is safe to use.</string>
<string name="settings_gpu_threaded_presentation">Threaded GPU Presentation</string>
<string name="settings_summary_gpu_threaded_presentation">Presents frames on a background thread when fast forwarding or vsync is disabled. This can measurably improve performance in the Vulkan renderer.</string>
<string name="settings_language">Language (restart to apply)</string>
<string name="touchscreen_controller_stop_editing">Stop Editing</string>
<string name="touchscreen_controller_reset_layout">Reset Layout</string>

View File

@ -49,6 +49,12 @@
app:defaultValue="true"
app:summary="@string/settings_summary_gpu_thread"
app:iconSpaceReserved="false" />
<SwitchPreferenceCompat
app:key="GPU/ThreadedPresentation"
app:title="@string/settings_gpu_threaded_presentation"
app:defaultValue="true"
app:summary="@string/settings_summary_gpu_threaded_presentation"
app:iconSpaceReserved="false" />
<SwitchPreferenceCompat
app:key="GPU/PGXPVertexCache"
app:title="@string/settings_pgxp_vertex_cache"