<!-- ============================================ 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. 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="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="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> <!-- 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="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> </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" /> </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> </device> </driconf>