990 lines
47 KiB
XML
990 lines
47 KiB
XML
<?xml version="1.0" standalone="yes"?>
|
|
<!--
|
|
|
|
============================================
|
|
Application bugs worked around in this file:
|
|
============================================
|
|
|
|
* Unigine Heaven 3.0 and older contain too many bugs and can't be supported
|
|
by drivers that want to be compliant.
|
|
|
|
* Various Unigine products don't use the #version and #extension GLSL
|
|
directives, meaning they only get GLSL 1.10 and no extensions for their
|
|
shaders.
|
|
Enabling all extensions for Unigine fixes most issues, but the GLSL version
|
|
is still 1.10.
|
|
|
|
* If ARB_sample_shading is supported, Unigine Heaven 4.0 and Valley 1.0 uses
|
|
an #extension directive in the middle of its shaders, which is illegal
|
|
in GLSL.
|
|
|
|
* Dying Light and Dead Island Definitive Edition redeclare vertex shader
|
|
built-ins (specifically gl_VertexID), which causes the vertex shaders to fail
|
|
to compile.
|
|
|
|
* Applications that are not suitable for adapative sync are denylisted here.
|
|
|
|
TODO: document the other workarounds.
|
|
|
|
-->
|
|
|
|
<!DOCTYPE driconf [
|
|
<!ELEMENT driconf (device+)>
|
|
<!ELEMENT device (application | engine)+>
|
|
<!ATTLIST device driver CDATA #IMPLIED
|
|
device CDATA #IMPLIED>
|
|
<!ELEMENT application (option+)>
|
|
<!ATTLIST application name CDATA #REQUIRED
|
|
executable CDATA #IMPLIED
|
|
executable_regexp CDATA #IMPLIED
|
|
sha1 CDATA #IMPLIED
|
|
application_name_match CDATA #IMPLIED
|
|
application_versions CDATA #IMPLIED>
|
|
<!ELEMENT engine (option+)>
|
|
|
|
<!-- engine_name_match: A regexp matching the engine name -->
|
|
<!-- engine_versions: A version in range format
|
|
(version 1 to 4 : "1:4") -->
|
|
|
|
<!ATTLIST engine engine_name_match CDATA #REQUIRED
|
|
engine_versions CDATA #IMPLIED>
|
|
|
|
<!ELEMENT option EMPTY>
|
|
<!ATTLIST option name CDATA #REQUIRED
|
|
value CDATA #REQUIRED>
|
|
]>
|
|
|
|
<driconf>
|
|
<!-- Please always enable app-specific workarounds for all drivers and
|
|
screens. -->
|
|
<device>
|
|
<application name="Unigine Sanctuary" executable="Sanctuary">
|
|
<option name="force_glsl_extensions_warn" value="true" />
|
|
<option name="disable_blend_func_extended" value="true" />
|
|
<option name="disable_arb_gpu_shader5" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Tropics" executable="Tropics">
|
|
<option name="force_glsl_extensions_warn" value="true" />
|
|
<option name="disable_blend_func_extended" value="true" />
|
|
<option name="disable_arb_gpu_shader5" value="true" />
|
|
</application>
|
|
|
|
<!-- using vulkan wsi for xservers causes deadlocks -->
|
|
<application name="Xwayland" executable="Xwayland">
|
|
<option name="disable_xcb_surface" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Heaven (32-bit)" executable="heaven_x86">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Heaven (64-bit)" executable="heaven_x64">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Heaven (Windows)" executable="heaven.exe">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Valley (32-bit)" executable="valley_x86">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Valley (64-bit)" executable="valley_x64">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Valley (Windows)" executable="valley.exe">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
|
|
<option name="dual_color_blend_by_location" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine OilRush (32-bit)" executable="OilRush_x86">
|
|
<option name="disable_blend_func_extended" value="true" />
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine OilRush (64-bit)" executable="OilRush_x64">
|
|
<option name="disable_blend_func_extended" value="true" />
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Savage 2" executable="savage2.bin">
|
|
<option name="disable_glsl_line_continuations" value="true" />
|
|
</application>
|
|
|
|
<application name="Topogun (32-bit)" executable="topogun32">
|
|
<option name="always_have_depth_buffer" value="true" />
|
|
</application>
|
|
|
|
<application name="Topogun (64-bit)" executable="topogun64">
|
|
<option name="always_have_depth_buffer" value="true" />
|
|
</application>
|
|
|
|
<application name="Dead Island (incl. Definitive Edition)" executable="DeadIslandGame">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
|
|
<!-- For the Definitive Edition which shares the same executable name -->
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
</application>
|
|
|
|
<application name="Dead Island Riptide Definitive Edition" executable="DeadIslandRiptideGame">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
</application>
|
|
|
|
<application name="Doom 3: BFG" executable="Doom3BFG.exe">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
<option name="force_glsl_extensions_warn" value="true" />
|
|
</application>
|
|
|
|
<application name="Dying Light" executable="DyingLightGame">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
</application>
|
|
|
|
<application name="Full Bore" executable="fullbore">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
</application>
|
|
|
|
<application name="RAGE (64-bit)" executable="Rage64.exe">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
<option name="force_gl_map_buffer_synchronized" value="true" />
|
|
</application>
|
|
|
|
<application name="RAGE (32-bit)" executable="Rage.exe">
|
|
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
|
|
<option name="force_gl_map_buffer_synchronized" value="true" />
|
|
</application>
|
|
|
|
<application name="Second Life" executable="do-not-directly-run-secondlife-bin">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Warsow (32-bit)" executable="warsow.i386">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Warsow (64-bit)" executable="warsow.x86_64">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Rust" executable="rust">
|
|
<option name="glsl_zero_init" value="true"/>
|
|
</application>
|
|
|
|
<application name="Divinity: Original Sin Enhanced Edition" executable="EoCApp">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<option name="glsl_correct_derivatives_after_discard" value="true" />
|
|
<option name="force_gl_vendor" value="ATI Technologies, Inc."/>
|
|
</application>
|
|
|
|
<application name="Metro 2033 Redux / Metro Last Night Redux" executable="metro">
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Worms W.M.D" executable="Worms W.M.Dx64">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Crookz - The Big Heist" executable="Crookz">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Tropico 5" executable="Tropico5">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Faster than Light (32-bit)" executable="FTL.x86">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Faster than Light (64-bit)" executable="FTL.amd64">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Final Fantasy VIII: Remastered" executable="FFVIII.exe">
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="SNK HEROINES Tag Team Frenzy" executable="SNKHEROINES.exe">
|
|
<option name="force_compat_shaders" value="true" />
|
|
</application>
|
|
|
|
<application name="The Culling" executable="Victory">
|
|
<option name="force_glsl_version" value="440" />
|
|
</application>
|
|
|
|
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
|
|
<option name="force_glsl_abs_sqrt" value="true" />
|
|
</application>
|
|
|
|
<application name="Spec Ops: The Line (64-bit)" executable="specops">
|
|
<option name="force_glsl_abs_sqrt" value="true" />
|
|
</application>
|
|
|
|
<application name="Kerbal Space Program (32-bit)" executable="KSP.x86">
|
|
<option name="glsl_zero_init" value="true"/>
|
|
</application>
|
|
|
|
<application name="Kerbal Space Program (64-bit)" executable="KSP.x86_64">
|
|
<option name="glsl_zero_init" value="true"/>
|
|
</application>
|
|
|
|
<application name="Luna Sky" executable="lunasky">
|
|
<option name="force_glsl_version" value="130"/>
|
|
<option name="glsl_ignore_write_to_readonly_var" value="true"/>
|
|
</application>
|
|
|
|
<application name="Rocket League" executable="RocketLeague">
|
|
<option name="glsl_correct_derivatives_after_discard" value="true"/>
|
|
</application>
|
|
|
|
<application name="The Witcher 2" executable="witcher2">
|
|
<option name="glsl_correct_derivatives_after_discard" value="true"/>
|
|
</application>
|
|
|
|
<application name="Unreal 4 Editor" executable="UE4Editor">
|
|
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
|
|
</application>
|
|
|
|
<application name="Observer" executable="TheObserver-Linux-Shipping">
|
|
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
|
|
</application>
|
|
|
|
<application name="Steamroll" executable="Steamroll-Linux-Shipping">
|
|
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
|
|
</application>
|
|
|
|
<application name="Refunct" executable="Refunct-Linux-Shipping">
|
|
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
|
|
</application>
|
|
|
|
<application name="We Happy Few" executable="GlimpseGame">
|
|
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
|
|
</application>
|
|
|
|
<application name="Google Earth VR" executable="Earth.exe">
|
|
<option name="allow_glsl_builtin_const_expression" value="true"/>
|
|
<option name="allow_glsl_relaxed_es" value="true"/>
|
|
</application>
|
|
|
|
<application name="Champions of Regnum" executable="game">
|
|
<option name="allow_extra_pp_tokens" value="true" />
|
|
</application>
|
|
|
|
<application name="Wolfenstein The Old Blood" executable="WolfOldBlood_x64.exe">
|
|
<option name="force_compat_profile" value="true" />
|
|
</application>
|
|
|
|
<application name="ARMA 3" executable="arma3.x86_64">
|
|
<option name="glsl_correct_derivatives_after_discard" value="true"/>
|
|
</application>
|
|
|
|
<application name="Epic Games Launcher" executable="EpicGamesLauncher.exe">
|
|
<option name="force_compat_profile" value="true" />
|
|
</application>
|
|
|
|
<application name="GpuTest" executable="GpuTest">
|
|
<!-- GiMark benchmark from GpuTest does not initialize .w channel of
|
|
lightDir0 and lightDir1 varyings in the vertex shader while
|
|
uses it in the fragment shader. -->
|
|
<option name="glsl_zero_init" value="true"/>
|
|
</application>
|
|
|
|
<application name="Curse of the Dead Gods" executable="Curse of the Dead Gods.exe">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/2598 -->
|
|
<option name="glsl_zero_init" value="true" />
|
|
</application>
|
|
|
|
<application name="GRID Autosport" executable="GridAutosport">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/1258 -->
|
|
<option name="force_integer_tex_nearest" value="true" />
|
|
</application>
|
|
|
|
<application name="DIRT: Showdown" executable="dirt.i386">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/1258 -->
|
|
<option name="force_integer_tex_nearest" value="true" />
|
|
</application>
|
|
|
|
<application name="DiRT Rally" executable="DirtRally">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/5648 -->
|
|
<option name="vs_position_always_invariant" value="true" />
|
|
</application>
|
|
|
|
<!-- Workarounds for SPECviewperf relying on invalid / non-conformant
|
|
OpenGL behavior. Older SPECviewperf versions might also need this.
|
|
-->
|
|
<application name="SPECviewperf13" executable="viewperf">
|
|
<option name="vblank_mode" value="0" />
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
<option name="allow_glsl_120_subset_in_110" value="true" />
|
|
<option name="force_gl_names_reuse" value="true" />
|
|
<!-- This makes it use GL_NVX_gpu_memory_info to query memory info
|
|
instead of non-existent GLX_AMD_gpu_association. Yes, it checks
|
|
the vendor string, not the extension list. -->
|
|
<option name="force_gl_vendor" value="NVIDIA Corporation" />
|
|
<!-- creo-02 doesn't enable GL_EXT_shader_image_load_store in GLSL -->
|
|
<option name="force_glsl_extensions_warn" value="true" />
|
|
<option name="mesa_glthread" value="true" />
|
|
<option name="mesa_no_error" value="true" />
|
|
<!-- Creating 10-bit pbuffers fails in the X server and returns BadAlloc. -->
|
|
<option name="allow_rgb10_configs" value="false" />
|
|
<option name="allow_invalid_glx_destroy_window" value="true" />
|
|
</application>
|
|
|
|
<!-- Workaround for unsynchronized VBO updates on Dead Cells android
|
|
game. (Possibly also needed for desktop version?)
|
|
-->
|
|
<application name="Dead-Cells" executable="com.playdigious.deadcells.mobile">
|
|
<option name="ignore_map_unsynchronized" value="true" />
|
|
</application>
|
|
|
|
<application name="Teardown" executable="teardown.exe">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/3714 -->
|
|
<option name="force_integer_tex_nearest" value="true" />
|
|
<option name="allow_glsl_extension_directive_midshader" value="true" />
|
|
</application>
|
|
|
|
<application name="Golf With Your Friends" executable="Golf With Your Friends.x86_64">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/4547 -->
|
|
<option name="glsl_correct_derivatives_after_discard" value="true" />
|
|
</application>
|
|
|
|
<application name="BETA CAE Systems - GL detect tool" executable="detect_opengl_tool">
|
|
<option name="mesa_extension_override" value="-GL_MESA_pack_invert -GL_MESA_framebuffer_flip_y -GL_MESA_window_pos" />
|
|
</application>
|
|
<application name="BETA CAE Systems - ANSA" executable="ansa_linux_x86_64">
|
|
<option name="mesa_extension_override" value="-GL_MESA_pack_invert -GL_MESA_framebuffer_flip_y -GL_MESA_window_pos" />
|
|
<option name="do_dce_before_clip_cull_analysis" value="true" />
|
|
</application>
|
|
<application name="BETA CAE Systems - META" executable="meta_post_x86_64">
|
|
<option name="mesa_extension_override" value="-GL_MESA_pack_invert -GL_MESA_framebuffer_flip_y -GL_MESA_window_pos" />
|
|
</application>
|
|
|
|
<!-- Workaround for Mari with executable name like Mari4.5v2, Mari4.7v4 -->
|
|
<application name="Mari" executable_regexp="Mari[0-9]+[.][0-9]+v[0-9]+">
|
|
<!-- Need ARB_gpu_shader5 for non-const sampler array index support -->
|
|
<option name="force_glsl_extensions_warn" value="true" />
|
|
</application>
|
|
|
|
<application name="Discovery Studio 2020" executable="DiscoveryStudio2020-bin">
|
|
<option name="force_direct_glx_context" value="true" />
|
|
</application>
|
|
|
|
<application name="Abaqus" executable="ABQcaeK">
|
|
<option name="keep_native_window_glx_drawable" value="true" />
|
|
<option name="allow_rgb10_configs" value="false" />
|
|
</application>
|
|
|
|
<application name="Maya" executable="maya.bin">
|
|
<!-- Needed otherwise the app doesn't try to use OpenCL -->
|
|
<option name="force_gl_vendor" value="ATI Technologies Inc." />
|
|
</application>
|
|
|
|
<application name="SD Gundam G Generation Cross Rays" executable="togg.exe">
|
|
<option name="force_compat_shaders" value="true" />
|
|
</application>
|
|
|
|
<!-- The GL thread allowlist is below, workarounds are above.
|
|
Keep it that way. -->
|
|
|
|
<application name="Minecraft" executable="minecraft-launcher">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Minecraft-FTB" executable="ftb-app">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Alien Isolation" executable="AlienIsolation">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="BioShock Infinite" executable="bioshock.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Borderlands 2" executable="Borderlands2">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Civilization 5" executable="Civ5XP">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Civilization 6" executable="Civ6">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Civilization 6" executable="Civ6Sub">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Dreamfall Chapters" executable="Dreamfall Chapters">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Hitman" executable="HitmanPro">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Renowned Explorers: International Society" executable="abbeycore_steam">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Saints Row 2" executable="saintsrow2.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Saints Row: The Third" executable="SaintsRow3.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Saints Row IV" executable="SaintsRow4.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Saints Row: Gat out of Hell" executable="SaintsRow4GooH.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Sid Meier's: Civilization Beyond Earth" executable="CivBE">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="The Witcher 2" executable="witcher2">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="American Truck Simulator" executable="amtrucks">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Euro Truck Simulator 2" executable="eurotrucks2">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Overlord" executable="overlord.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Overlord 2" executable="overlord2.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Oil Rush" executable="OilRush_x86">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="War Thunder" executable="aces">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="War Thunder (Wine)" executable="aces.exe">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Outlast" executable="OLGame.x86_64">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Spec Ops: The Line (64-bit)" executable="specops">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Mount and Blade Warband" executable="mb_warband_linux">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Valheim" executable="valheim.x86_64">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- around 18% performance increase in min and avg fps, max fps capped at 60fps. -->
|
|
<application name="Medieval II: Total War" executable="Medieval2">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- min fps ~21 ===> ~27 while standing still in game, also higher gpu load. -->
|
|
<application name="Carnivores: Dinosaur Hunter Reborn (wine)" executable="Carnivores-master.exe">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- around 30% increase in avg fps -->
|
|
<application name="Far Cry 2 (wine)" executable="farcry2.exe">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Talos Principle" executable="Talos">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Talos Principle (Unrestricted)" executable="Talos_Unrestricted">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- roughly 30% increase in fps -->
|
|
<application name="7 Days To Die (64-bit)" executable="7DaysToDie.x86_64">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="7 Days To Die (32-bit)" executable="7DaysToDie.x86">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- Emulator tends to have a high CPU load for GPU emulation, so separating the driver overhead yield an improvement. -->
|
|
<application name="Dolphin Emulator" executable="dolphin-emu">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Citra - Nintendo 3DS Emulator" executable="citra-qt">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="Yuzu - Nintendo Switch Emulator" executable="yuzu">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="RPCS3" executable="rpcs3">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<application name="PCSX2" executable="PCSX2">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="From The Depths" executable="From_The_Depths.x86_64">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- #Minimum fps 136 ==> 144 -->
|
|
<application name="Plague Inc Evolved (32-bit)" executable="PlagueIncEvolved.x86">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Plague Inc Evolved (64-bit)" executable="PlagueIncEvolved.x86_64">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<!-- 10% fps increase -->
|
|
<application name="Beholder (32-bit)" executable="Beholder.x86">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Beholder (64-bit)" executable="Beholder.x86_64">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<!-- X3 games: 15% avg fps increase while flying in space -->
|
|
<application name="X3 Reunion" executable="X3R_main">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="X3 Terran Conflict" executable="X3TR_main">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="X3 Albion Prelude" executable="X3AP_main">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<!-- +30% avg fps -->
|
|
<application name="Borderlands: The Pre-Sequel" executable="BorderlandsPreSequel">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Transport Fever" executable="TransportFever">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<application name="Unigine Sanctuary" executable="Sanctuary">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Tropics" executable="Tropics">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Heaven (32-bit)" executable="heaven_x86">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Heaven (64-bit)" executable="heaven_x64">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Valley (32-bit)" executable="valley_x86">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Valley (64-bit)" executable="valley_x64">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Unigine Superposition" executable="superposition">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<application name="Basemark GPU" executable="BasemarkGPU_gl">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
|
|
<application name="Stellaris" executable="stellaris">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<application name="Battletech" executable="BattleTech">
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
|
|
<!-- Adaptive sync denylist follows below: -->
|
|
<application name="gnome-shell" executable="gnome-shell">
|
|
<option name="adaptive_sync" value="false" />
|
|
<option name="v3d_nonmsaa_texture_size_limit" value="true" />
|
|
</application>
|
|
<application name="Desktop — Plasma" executable="plasmashell">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="budgie-wm" executable="budgie-wm">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="kwin_x11" executable="kwin_x11">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="ksmserver-logout-greeter" executable="ksmserver-logout-greeter">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="ksmserver-switchuser-greeter" executable="ksmserver-switchuser-greeter">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="kscreenlocker_greet" executable="kscreenlocker_greet">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="startplasma" executable="startplasma">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="sddm-greeter" executable="sddm-greeter">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="krunner" executable="krunner">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="spectacle" executable="spectacle">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="marco" executable="marco">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="compton" executable="compton">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="picom" executable="picom">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="xfwm4" executable="xfwm4">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Enlightenment" executable="enlightenment">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="mutter" executable="mutter">
|
|
<option name="adaptive_sync" value="false" />
|
|
<option name="v3d_nonmsaa_texture_size_limit" value="true" />
|
|
</application>
|
|
<application name="muffin" executable="muffin">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="compiz" executable="compiz">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Firefox" executable="firefox">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Firefox ESR" executable="firefox-esr">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Chromium" executable="chromium">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Google Chrome" executable="chrome">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Iceweasel" executable="iceweasel">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Epiphany" executable="epiphany">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Konqueror" executable="konqueror">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Falkon" executable="falkon">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Seamonkey" executable="seamonkey">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Waterfox" executable="waterfox">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="VLC Media Player" executable="vlc">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Totem" executable="totem">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Dragon Player" executable="dragon">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="mpv" executable="mpv">
|
|
<option name="adaptive_sync" value="false" />
|
|
</application>
|
|
<application name="Xorg" executable="Xorg">
|
|
<option name="v3d_nonmsaa_texture_size_limit" value="true" />
|
|
</application>
|
|
|
|
<application name="gfxbench" executable="testfw_app">
|
|
<option name="vk_x11_override_min_image_count" value="2" />
|
|
<option name="vk_wsi_force_bgra8_unorm_first" value="true" />
|
|
</application>
|
|
|
|
<application name="Brink" executable="brink.exe">
|
|
<option name="glx_extension_override" value="-GLX_OML_swap_method" />
|
|
<option name="allow_higher_compat_version" value="true" />
|
|
</application>
|
|
|
|
<application name="Enter The Gungeon (32 bits)" executable="EtG.x86">
|
|
<option name="glsl_correct_derivatives_after_discard" value="true" />
|
|
</application>
|
|
|
|
<application name="Enter The Gungeon (64 bits)" executable="EtG.x86_64">
|
|
<option name="glsl_correct_derivatives_after_discard" value="true" />
|
|
</application>
|
|
|
|
<!-- Workaround for STAR WARS: Knights of the Old Republic relying on
|
|
non-specified OpenGL behavior (expecting texture names to be
|
|
small enough to fit in the static array).
|
|
-->
|
|
<application name="SWKOTOR (wine)" executable="swkotor.exe">
|
|
<option name="force_gl_names_reuse" value="true"/>
|
|
</application>
|
|
|
|
<application name="Assault Android Cactus (32-bit)" executable="cactus_demo.x86">
|
|
<option name="vs_position_always_precise" value="true" />
|
|
</application>
|
|
<application name="Assault Android Cactus (64-bit)" executable="cactus_demo.x86_64">
|
|
<option name="vs_position_always_precise" value="true" />
|
|
</application>
|
|
<application name="Assault Android Cactus (32-bit)" executable="cactus.x86">
|
|
<option name="vs_position_always_precise" value="true" />
|
|
</application>
|
|
<application name="Assault Android Cactus (64-bit)" executable="cactus.x86_64">
|
|
<option name="vs_position_always_precise" value="true" />
|
|
</application>
|
|
|
|
<!-- Vulkan workarounds: -->
|
|
|
|
<!-- Works around the game not starting (does not deal with
|
|
the implementation returning more images than the minimum
|
|
specified by the application. -->
|
|
<engine engine_name_match="UnrealEngine4.*" engine_versions="0:23">
|
|
<option name="vk_x11_strict_image_count" value="true" />
|
|
</engine>
|
|
|
|
<!-- DOOM crashes at startup without this workaround if the adaptative sync mode is enabled. -->
|
|
<application name="DOOM" executable="DOOMx64vk.exe">
|
|
<option name="vk_x11_strict_image_count" value="true" />
|
|
</application>
|
|
|
|
<!-- DOOM Doom Eternal happily creates a swapchain with 2 images for
|
|
IMMEDIATE. This fixes a 10% performance issue with RADV. -->
|
|
<application name="DOOMEternal" executable="DOOMEternalx64vk.exe">
|
|
<option name="vk_x11_ensure_min_image_count" value="true" />
|
|
</application>
|
|
|
|
<!-- Wolfenstein: Youngblood crashes at startup on xwayland without this workaround. -->
|
|
<application name="Wolfenstein: Youngblood(x64vk)" executable="Youngblood_x64vk.exe">
|
|
<option name="vk_x11_strict_image_count" value="true" />
|
|
</application>
|
|
|
|
<!-- Metro:Exodus crashes at startup on xwayland without this workaround. -->
|
|
<application name="Metro: Exodus" application_name_match="metroexodus">
|
|
<option name="vk_x11_strict_image_count" value="true" />
|
|
</application>
|
|
|
|
<application name="Forsaken Remastered" executable="ForsakenEx">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/5437 -->
|
|
<option name="vk_dont_care_as_load" value="true" />
|
|
</application>
|
|
</device>
|
|
<!-- vmwgfx doesn't like full buffer swaps and can't sync to vertical retraces.-->
|
|
<device driver="vmwgfx">
|
|
<application name="gnome-shell" executable="gnome-shell">
|
|
<option name="glx_extension_override" value="-GLX_EXT_buffer_age -GLX_OML_sync_control -GLX_SGI_video_sync" />
|
|
</application>
|
|
<application name="Compiz" executable="Compiz">
|
|
<option name="glx_extension_override" value="-GLX_EXT_buffer_age -GLX_OML_sync_control" />
|
|
</application>
|
|
</device>
|
|
<device driver="radeonsi">
|
|
<application name="Half Life 2" executable="hl2_linux">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Black Mesa" executable="bms_linux">
|
|
<option name="mesa_glthread" value="true" />
|
|
</application>
|
|
<application name="Alien Isolation" executable="AlienIsolation">
|
|
<option name="force_gl_vendor" value="X.Org" />
|
|
</application>
|
|
<application name="American Truck Simulator" executable="amtrucks">
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
<application name="Counter-Strike Global Offensive" executable="csgo_linux64">
|
|
<option name="mesa_glthread" value="true" />
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
|
</application>
|
|
<application name="Rocket League" executable="RocketLeague">
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
<application name="DiRT Rally" executable="DirtRally">
|
|
<option name="radeonsi_prim_restart_tri_strips_only" value="true"/>
|
|
</application>
|
|
<application name="Gfx Bench" executable="gfxbench_gl">
|
|
<!-- Helps offscreen tests -->
|
|
<option name="mesa_glthread" value="true"/>
|
|
</application>
|
|
<!-- YoYo game engine workarounds -->
|
|
<application name="Monolith demo5" executable="runner" sha1="0c40d509a74e357f0280cb1bd882e9cd94b91bdf">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
<!-- Note: The following fix works for both Memoranda and Riptale as they have the same sha -->
|
|
<application name="Memoranda / Riptale" executable="runner" sha1="aa13dec6af63c88f308ebb487693896434a4db56">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<application name="Nuclear Throne" executable="runner" sha1="84814e8db125e889f5d9d4195a0ca72a871ea1fd">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<application name="Undertale" executable="runner" sha1="dfa302e7ec78641d0696dbbc1a06fc29f34ff1ff">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<application name="Turmoil" executable="runner" sha1="cbbf757aaab289859f8dae191a7d63afc30643d9">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<application name="Peace, Death!" executable="runner" sha1="5b909f3d21799773370adf084f649848f098234e">
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/2647 -->
|
|
<application name="Kerbal Space Program" executable="KSP.x86_64">
|
|
<option name="radeonsi_no_infinite_interp" value="true" />
|
|
</application>
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/2686 -->
|
|
<application name="7 Days to Die" executable="7DaysToDie.x86_64">
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
<application name="7 Days to Die" executable="7DaysToDie.x86">
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
<application name="SPECviewperf13" executable="viewperf">
|
|
<option name="glthread_nop_check_framebuffer_status" value="true" />
|
|
<option name="radeonsi_sync_compile" value="true" />
|
|
</application>
|
|
<application name="Road Redemption" executable="RoadRedemption.x86_64">
|
|
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
|
</application>
|
|
<application name="Wasteland 2" executable="WL2">
|
|
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
|
</application>
|
|
<application name="Teardown" executable="teardown.exe">
|
|
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/3714 -->
|
|
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
|
<option name="radeonsi_no_infinite_interp" value="true" />
|
|
</application>
|
|
<application name="SpaceEngine" executable="SpaceEngine.exe">
|
|
<option name="force_gl_vendor" value="X.Org" />
|
|
</application>
|
|
<application name="BETA CAE Systems - GL detect tool" executable="detect_opengl_tool">
|
|
<option name="force_gl_vendor" value="ATI Technologies Inc." />
|
|
</application>
|
|
<application name="BETA CAE Systems - ANSA" executable="ansa_linux_x86_64">
|
|
<option name="force_gl_vendor" value="ATI Technologies Inc." />
|
|
</application>
|
|
<application name="BETA CAE Systems - META" executable="meta_post_x86_64">
|
|
<option name="force_gl_vendor" value="ATI Technologies Inc." />
|
|
<option name="radeonsi_force_use_fma32" value="true" />
|
|
</application>
|
|
<application name="Black Geyser: Couriers of Darkness" executable="BlackGeyser.x86_64">
|
|
<option name="radeonsi_zerovram" value="true" />
|
|
</application>
|
|
</device>
|
|
<device driver="iris">
|
|
<application name="Middle Earth: Shadow of Mordor" executable="ShadowOfMordor">
|
|
<option name="vs_position_always_invariant" value="true" />
|
|
</application>
|
|
<application name="glmark2" executable="glmark2">
|
|
<option name="limit_trig_input_range" value="true" />
|
|
</application>
|
|
</device>
|
|
<device driver="crocus">
|
|
<application name="glmark2" executable="glmark2">
|
|
<option name="limit_trig_input_range" value="true" />
|
|
</application>
|
|
</device>
|
|
<device driver="anv">
|
|
<application name="Aperture Desk Job" executable="deskjob">
|
|
<option name="anv_assume_full_subgroups" value="true" />
|
|
</application>
|
|
<application name="DOOMEternal" executable="DOOMEternalx64vk.exe">
|
|
<option name="anv_assume_full_subgroups" value="true" />
|
|
</application>
|
|
<application name="Wolfenstein: Youngblood(x64vk)" executable="Youngblood_x64vk.exe">
|
|
<option name="limit_trig_input_range" value="true" />
|
|
</application>
|
|
<application name="Batman™: Arkham Knight" executable="BatmanAK.exe">
|
|
<option name="anv_sample_mask_out_opengl_behaviour" value="true"/>
|
|
</application>
|
|
</device>
|
|
|
|
<device driver="r600">
|
|
<application name="Tomb Raider 2013" executable="TombRaider">
|
|
<option name="mesa_extension_override" value="-GL_ARB_shader_image_load_store" />
|
|
</application>
|
|
</device>
|
|
|
|
<device driver="virtio_gpu">
|
|
<application name="Counter-Strike Global Offensive" executable="csgo_linux64">
|
|
<option name="format_l8_srgb_enable_readback" value="true" />
|
|
</application>
|
|
</device>
|
|
<!--
|
|
The android game hall of shame:
|
|
|
|
Workarounds for android games that are not aware of open source drivers.
|
|
These can be removed as games have their allowlists updated.
|
|
-->
|
|
<device driver="msm" device="FD618">
|
|
<application name="Call of Duty Mobile" executable="com.activision.callofduty.shooter">
|
|
<option name="force_gl_renderer" value="Adreno (TM) 618"/>
|
|
<option name="force_gl_vendor" value="Qualcomm"/>
|
|
</application>
|
|
<application name="Asphalt 8" executable="com.gameloft.android.ANMP.GloftA8HM">
|
|
<!-- Note: asphalt8's allowlist seems to not have been updated recently
|
|
enough to be aware of "Adreno (TM) 618", but we seem to otherwise
|
|
have enough headroom to opt into the higher settings. (Conversely
|
|
the allowlist seems to allow G72-MP3 into the higher tier, despite
|
|
not being able to maintain fps.. possibly it is not properly
|
|
differentiating between various core MPn configurations. So I'm
|
|
going to use that to justify claiming to be a618's *slightly*
|
|
bigger brother)
|
|
-->
|
|
<option name="force_gl_renderer" value="Adreno (TM) 630"/>
|
|
<option name="force_gl_vendor" value="Qualcomm"/>
|
|
</application>
|
|
<application name="Asphalt 9" executable="com.gameloft.android.ANMP.GloftA9HM">
|
|
<option name="force_gl_renderer" value="Adreno (TM) 618"/>
|
|
<option name="force_gl_vendor" value="Qualcomm"/>
|
|
</application>
|
|
<application name="PUBG Mobile" executable="com.tencent.ig">
|
|
<!-- Note: Maxed out a630 settings still limits max framerate, yet GPU
|
|
is below 45% utilization (mostly closer to 40%). If I claim to
|
|
be a640, that unlocks "Extreme" framerate (and "Ultra HD" graphics).
|
|
With "Extreme" + "HDR" we are comfortably at 60fps with plenty of
|
|
headroom. "Extreme" + "Ultra HD" (max settings for a640) we are
|
|
starting to approach the limit. I'll stick with a630 to be
|
|
conservative, but argueably we could go higher. (This flagship
|
|
gaming phone thing is a scam!)
|
|
-->
|
|
<option name="force_gl_renderer" value="Adreno (TM) 630"/>
|
|
<option name="force_gl_vendor" value="Qualcomm"/>
|
|
</application>
|
|
</device>
|
|
</driconf>
|