| <!-- |
| |
| ============================================ |
| 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 blacklisted here. |
| |
| TODO: document the other workarounds. |
| |
| --> |
| |
| <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" /> |
| </application> |
| |
| <application name="Unigine Tropics" executable="Tropics"> |
| <option name="force_glsl_extensions_warn" value="true" /> |
| <option name="disable_blend_func_extended" 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 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 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="Dying Light" executable="DyingLightGame"> |
| <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" /> |
| </application> |
| |
| <application name="RAGE (32-bit)" executable="Rage.exe"> |
| <option name="allow_glsl_builtin_variable_redeclaration" 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" /> |
| </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="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="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="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="No Mans Sky" executable="NMS.exe"> |
| <option name="force_glsl_extensions_warn" value="true" /> |
| <option name="allow_glsl_layout_qualifier_on_function_parameters" 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> |
| |
| <!-- The GL thread whitelist is below, workarounds are above. |
| Keep it that way. --> |
| |
| <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> |
| |
| <!-- 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> |
| |
| <!-- Adaptive sync blacklist follows below: --> |
| <application name="gnome-shell" executable="gnome-shell"> |
| <option name="adaptive_sync" value="false" /> |
| </application> |
| <application name="Desktop — Plasma" executable="plasmashell"> |
| <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="marco" executable="marco"> |
| <option name="adaptive_sync" value="false" /> |
| </application> |
| <application name="compton" executable="compton"> |
| <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" /> |
| </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="Seamonkey" executable="seamonkey"> |
| <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> |
| </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_disable_ext_buffer_age" value="true" /> |
| <option name="glx_disable_oml_sync_control" value="true" /> |
| <option name="glx_disable_sgi_video_sync" value="true" /> |
| </application> |
| <application name="Compiz" executable="Compiz"> |
| <option name="glx_disable_ext_buffer_age" value="true" /> |
| <option name="glx_disable_oml_sync_control" value="true" /> |
| </application> |
| </device> |
| <device driver="radeonsi"> |
| <application name="ARK: Survival Evolved (and unintentionally the UE4 demo template)" executable="ShooterGame"> |
| <option name="radeonsi_clear_db_cache_before_clear" value="true" /> |
| </application> |
| <application name="No Mans Sky" executable="NMS.exe"> |
| <option name="radeonsi_zerovram" value="true" /> |
| </application> |
| <application name="Civilization 6" executable="Civ6"> |
| <option name="radeonsi_enable_nir" value="true"/> |
| </application> |
| <application name="Civilization 6" executable="Civ6Sub"> |
| <option name="radeonsi_enable_nir" value="true"/> |
| </application> |
| </device> |
| </driconf> |