drirc: add Waterfox to adaptive-sync blacklist
[mesa.git] / src / util / 00-mesa-defaults.conf
1 <?xml version="1.0" standalone="yes"?>
2 <!--
3
4 ============================================
5 Application bugs worked around in this file:
6 ============================================
7
8 * Unigine Heaven 3.0 and older contain too many bugs and can't be supported
9 by drivers that want to be compliant.
10
11 * Various Unigine products don't use the #version and #extension GLSL
12 directives, meaning they only get GLSL 1.10 and no extensions for their
13 shaders.
14 Enabling all extensions for Unigine fixes most issues, but the GLSL version
15 is still 1.10.
16
17 * If ARB_sample_shading is supported, Unigine Heaven 4.0 and Valley 1.0 uses
18 an #extension directive in the middle of its shaders, which is illegal
19 in GLSL.
20
21 * Dying Light and Dead Island Definitive Edition redeclare vertex shader
22 built-ins (specifically gl_VertexID), which causes the vertex shaders to fail
23 to compile.
24
25 * Applications that are not suitable for adapative sync are blacklisted here.
26
27 TODO: document the other workarounds.
28
29 -->
30
31 <!DOCTYPE driconf [
32 <!ELEMENT driconf (device+)>
33 <!ELEMENT device (application+)>
34 <!ATTLIST device driver CDATA #IMPLIED>
35 <!ELEMENT application (option+)>
36 <!ATTLIST application name CDATA #REQUIRED
37 executable CDATA #REQUIRED>
38 <!ELEMENT option EMPTY>
39 <!ATTLIST option name CDATA #REQUIRED
40 value CDATA #REQUIRED>
41 ]>
42
43 <driconf>
44 <!-- Please always enable app-specific workarounds for all drivers and
45 screens. -->
46 <device>
47 <application name="Unigine Sanctuary" executable="Sanctuary">
48 <option name="force_glsl_extensions_warn" value="true" />
49 <option name="disable_blend_func_extended" value="true" />
50 </application>
51
52 <application name="Unigine Tropics" executable="Tropics">
53 <option name="force_glsl_extensions_warn" value="true" />
54 <option name="disable_blend_func_extended" value="true" />
55 </application>
56
57 <application name="Unigine Heaven (32-bit)" executable="heaven_x86">
58 <option name="allow_glsl_extension_directive_midshader" value="true" />
59 <!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
60 <option name="dual_color_blend_by_location" value="true" />
61 </application>
62
63 <application name="Unigine Heaven (64-bit)" executable="heaven_x64">
64 <option name="allow_glsl_extension_directive_midshader" value="true" />
65 <!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
66 <option name="dual_color_blend_by_location" value="true" />
67 </application>
68
69 <application name="Unigine Valley (32-bit)" executable="valley_x86">
70 <option name="allow_glsl_extension_directive_midshader" value="true" />
71 <!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
72 <option name="dual_color_blend_by_location" value="true" />
73 </application>
74
75 <application name="Unigine Valley (64-bit)" executable="valley_x64">
76 <option name="allow_glsl_extension_directive_midshader" value="true" />
77 <!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
78 <option name="dual_color_blend_by_location" value="true" />
79 </application>
80
81 <application name="Unigine OilRush (32-bit)" executable="OilRush_x86">
82 <option name="disable_blend_func_extended" value="true" />
83 <option name="allow_glsl_extension_directive_midshader" value="true" />
84 </application>
85
86 <application name="Unigine OilRush (64-bit)" executable="OilRush_x64">
87 <option name="disable_blend_func_extended" value="true" />
88 <option name="allow_glsl_extension_directive_midshader" value="true" />
89 </application>
90
91 <application name="Savage 2" executable="savage2.bin">
92 <option name="disable_glsl_line_continuations" value="true" />
93 </application>
94
95 <application name="Topogun (32-bit)" executable="topogun32">
96 <option name="always_have_depth_buffer" value="true" />
97 </application>
98
99 <application name="Topogun (64-bit)" executable="topogun64">
100 <option name="always_have_depth_buffer" value="true" />
101 </application>
102
103 <application name="Dead Island (incl. Definitive Edition)" executable="DeadIslandGame">
104 <option name="allow_glsl_extension_directive_midshader" value="true" />
105
106 <!-- For the Definitive Edition which shares the same executable name -->
107 <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
108 </application>
109
110 <application name="Dead Island Riptide Definitive Edition" executable="DeadIslandRiptideGame">
111 <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
112 </application>
113
114 <application name="Dying Light" executable="DyingLightGame">
115 <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
116 </application>
117
118 <application name="RAGE (64-bit)" executable="Rage64.exe">
119 <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
120 </application>
121
122 <application name="RAGE (32-bit)" executable="Rage.exe">
123 <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
124 </application>
125
126 <application name="Second Life" executable="do-not-directly-run-secondlife-bin">
127 <option name="allow_glsl_extension_directive_midshader" value="true" />
128 </application>
129
130 <application name="Warsow (32-bit)" executable="warsow.i386">
131 <option name="allow_glsl_extension_directive_midshader" value="true" />
132 </application>
133
134 <application name="Warsow (64-bit)" executable="warsow.x86_64">
135 <option name="allow_glsl_extension_directive_midshader" value="true" />
136 </application>
137
138 <application name="Rust" executable="rust">
139 <option name="glsl_zero_init" value="true"/>
140 </application>
141
142 <application name="Divinity: Original Sin Enhanced Edition" executable="EoCApp">
143 <option name="allow_glsl_extension_directive_midshader" value="true" />
144 </application>
145
146 <application name="Metro 2033 Redux / Metro Last Night Redux" executable="metro">
147 <option name="allow_glsl_extension_directive_midshader" value="true" />
148 </application>
149
150 <application name="Worms W.M.D" executable="Worms W.M.Dx64">
151 <option name="allow_higher_compat_version" value="true" />
152 </application>
153
154 <application name="Crookz - The Big Heist" executable="Crookz">
155 <option name="allow_higher_compat_version" value="true" />
156 </application>
157
158 <application name="Tropico 5" executable="Tropico5">
159 <option name="allow_higher_compat_version" value="true" />
160 </application>
161
162 <application name="The Culling" executable="Victory">
163 <option name="force_glsl_version" value="440" />
164 </application>
165
166 <application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
167 <option name="force_glsl_abs_sqrt" value="true" />
168 </application>
169
170 <application name="Spec Ops: The Line (64-bit)" executable="specops">
171 <option name="force_glsl_abs_sqrt" value="true" />
172 </application>
173
174 <application name="Kerbal Space Program (32-bit)" executable="KSP.x86">
175 <option name="glsl_zero_init" value="true"/>
176 </application>
177
178 <application name="Kerbal Space Program (64-bit)" executable="KSP.x86_64">
179 <option name="glsl_zero_init" value="true"/>
180 </application>
181
182 <application name="Rocket League" executable="RocketLeague">
183 <option name="glsl_correct_derivatives_after_discard" value="true"/>
184 </application>
185
186 <application name="The Witcher 2" executable="witcher2">
187 <option name="glsl_correct_derivatives_after_discard" value="true"/>
188 </application>
189
190 <application name="Unreal 4 Editor" executable="UE4Editor">
191 <option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
192 </application>
193
194 <application name="Observer" executable="TheObserver-Linux-Shipping">
195 <option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
196 </application>
197
198 <application name="Steamroll" executable="Steamroll-Linux-Shipping">
199 <option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
200 </application>
201
202 <application name="Refunct" executable="Refunct-Linux-Shipping">
203 <option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
204 </application>
205
206 <application name="Google Earth VR" executable="Earth.exe">
207 <option name="allow_glsl_builtin_const_expression" value="true"/>
208 <option name="allow_glsl_relaxed_es" value="true"/>
209 </application>
210
211 <application name="No Mans Sky" executable="NMS.exe">
212 <option name="force_glsl_extensions_warn" value="true" />
213 <option name="allow_glsl_layout_qualifier_on_function_parameters" value="true" />
214 </application>
215
216 <application name="Wolfenstein The Old Blood" executable="WolfOldBlood_x64.exe">
217 <option name="force_compat_profile" value="true" />
218 </application>
219
220 <application name="ARMA 3" executable="arma3.x86_64">
221 <option name="glsl_correct_derivatives_after_discard" value="true"/>
222 </application>
223
224 <!-- The GL thread whitelist is below, workarounds are above.
225 Keep it that way. -->
226
227 <application name="Alien Isolation" executable="AlienIsolation">
228 <option name="mesa_glthread" value="true"/>
229 </application>
230
231 <application name="BioShock Infinite" executable="bioshock.i386">
232 <option name="mesa_glthread" value="true"/>
233 </application>
234
235 <application name="Borderlands 2" executable="Borderlands2">
236 <option name="mesa_glthread" value="true"/>
237 </application>
238
239 <application name="Civilization 5" executable="Civ5XP">
240 <option name="mesa_glthread" value="true"/>
241 </application>
242 <application name="Civilization 6" executable="Civ6">
243 <option name="mesa_glthread" value="true"/>
244 </application>
245 <application name="Civilization 6" executable="Civ6Sub">
246 <option name="mesa_glthread" value="true"/>
247 </application>
248
249 <application name="Dreamfall Chapters" executable="Dreamfall Chapters">
250 <option name="mesa_glthread" value="true"/>
251 </application>
252
253 <application name="Hitman" executable="HitmanPro">
254 <option name="mesa_glthread" value="true"/>
255 </application>
256
257 <application name="Renowned Explorers: International Society" executable="abbeycore_steam">
258 <option name="mesa_glthread" value="true"/>
259 </application>
260
261 <application name="Saints Row 2" executable="saintsrow2.i386">
262 <option name="mesa_glthread" value="true"/>
263 </application>
264 <application name="Saints Row: The Third" executable="SaintsRow3.i386">
265 <option name="mesa_glthread" value="true"/>
266 </application>
267 <application name="Saints Row IV" executable="SaintsRow4.i386">
268 <option name="mesa_glthread" value="true"/>
269 </application>
270 <application name="Saints Row: Gat out of Hell" executable="SaintsRow4GooH.i386">
271 <option name="mesa_glthread" value="true"/>
272 </application>
273
274 <application name="Sid Meier's: Civilization Beyond Earth" executable="CivBE">
275 <option name="mesa_glthread" value="true"/>
276 </application>
277
278 <application name="The Witcher 2" executable="witcher2">
279 <option name="mesa_glthread" value="true"/>
280 </application>
281
282 <application name="American Truck Simulator" executable="amtrucks">
283 <option name="mesa_glthread" value="true"/>
284 </application>
285 <application name="Euro Truck Simulator 2" executable="eurotrucks2">
286 <option name="mesa_glthread" value="true"/>
287 </application>
288
289 <application name="Overlord" executable="overlord.i386">
290 <option name="mesa_glthread" value="true"/>
291 </application>
292 <application name="Overlord 2" executable="overlord2.i386">
293 <option name="mesa_glthread" value="true"/>
294 </application>
295
296 <application name="Oil Rush" executable="OilRush_x86">
297 <option name="mesa_glthread" value="true"/>
298 </application>
299
300 <application name="War Thunder" executable="aces">
301 <option name="mesa_glthread" value="true"/>
302 </application>
303 <application name="War Thunder (Wine)" executable="aces.exe">
304 <option name="mesa_glthread" value="true"/>
305 </application>
306
307 <application name="Outlast" executable="OLGame.x86_64">
308 <option name="mesa_glthread" value="true"/>
309 </application>
310
311 <application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
312 <option name="mesa_glthread" value="true"/>
313 </application>
314 <application name="Spec Ops: The Line (64-bit)" executable="specops">
315 <option name="mesa_glthread" value="true"/>
316 </application>
317 <application name="Mount and Blade Warband" executable="mb_warband_linux">
318 <option name="mesa_glthread" value="true"/>
319 </application>
320
321 <!-- around 18% performance increase in min and avg fps, max fps capped at 60fps. -->
322 <application name="Medieval II: Total War" executable="Medieval2">
323 <option name="mesa_glthread" value="true"/>
324 </application>
325
326 <!-- min fps ~21 ===> ~27 while standing still in game, also higher gpu load. -->
327 <application name="Carnivores: Dinosaur Hunter Reborn (wine)" executable="Carnivores-master.exe">
328 <option name="mesa_glthread" value="true"/>
329 </application>
330
331 <!-- around 30% increase in avg fps -->
332 <application name="Far Cry 2 (wine)" executable="farcry2.exe">
333 <option name="mesa_glthread" value="true"/>
334 </application>
335
336 <application name="Talos Principle" executable="Talos">
337 <option name="mesa_glthread" value="true"/>
338 </application>
339 <application name="Talos Principle (Unrestricted)" executable="Talos_Unrestricted">
340 <option name="mesa_glthread" value="true"/>
341 </application>
342
343 <!-- Adaptive sync blacklist follows below: -->
344 <application name="gnome-shell" executable="gnome-shell">
345 <option name="adaptive_sync" value="false" />
346 </application>
347 <application name="Desktop — Plasma" executable="plasmashell">
348 <option name="adaptive_sync" value="false" />
349 </application>
350 <application name="budgie-wm" executable="budgie-wm">
351 <option name="adaptive_sync" value="false" />
352 </application>
353 <application name="kwin_x11" executable="kwin_x11">
354 <option name="adaptive_sync" value="false" />
355 </application>
356 <application name="ksmserver-logout-greeter" executable="ksmserver-logout-greeter">
357 <option name="adaptive_sync" value="false" />
358 </application>
359 <application name="ksmserver-switchuser-greeter" executable="ksmserver-switchuser-greeter">
360 <option name="adaptive_sync" value="false" />
361 </application>
362 <application name="kscreenlocker_greet" executable="kscreenlocker_greet">
363 <option name="adaptive_sync" value="false" />
364 </application>
365 <application name="startplasma" executable="startplasma">
366 <option name="adaptive_sync" value="false" />
367 </application>
368 <application name="sddm-greeter" executable="sddm-greeter">
369 <option name="adaptive_sync" value="false" />
370 </application>
371 <application name="krunner" executable="krunner">
372 <option name="adaptive_sync" value="false" />
373 </application>
374 <application name="marco" executable="marco">
375 <option name="adaptive_sync" value="false" />
376 </application>
377 <application name="compton" executable="compton">
378 <option name="adaptive_sync" value="false" />
379 </application>
380 <application name="xfwm4" executable="xfwm4">
381 <option name="adaptive_sync" value="false" />
382 </application>
383 <application name="Enlightenment" executable="enlightenment">
384 <option name="adaptive_sync" value="false" />
385 </application>
386 <application name="mutter" executable="mutter">
387 <option name="adaptive_sync" value="false" />
388 </application>
389 <application name="muffin" executable="muffin">
390 <option name="adaptive_sync" value="false" />
391 </application>
392 <application name="compiz" executable="compiz">
393 <option name="adaptive_sync" value="false" />
394 </application>
395 <application name="Firefox" executable="firefox">
396 <option name="adaptive_sync" value="false" />
397 </application>
398 <application name="Firefox ESR" executable="firefox-esr">
399 <option name="adaptive_sync" value="false" />
400 </application>
401 <application name="Chromium" executable="chromium">
402 <option name="adaptive_sync" value="false" />
403 </application>
404 <application name="Google Chrome" executable="chrome">
405 <option name="adaptive_sync" value="false" />
406 </application>
407 <application name="Iceweasel" executable="iceweasel">
408 <option name="adaptive_sync" value="false" />
409 </application>
410 <application name="Epiphany" executable="epiphany">
411 <option name="adaptive_sync" value="false" />
412 </application>
413 <application name="Konqueror" executable="konqueror">
414 <option name="adaptive_sync" value="false" />
415 </application>
416 <application name="Seamonkey" executable="seamonkey">
417 <option name="adaptive_sync" value="false" />
418 </application>
419 <application name="Waterfox" executable="waterfox">
420 <option name="adaptive_sync" value="false" />
421 </application>
422 <application name="VLC Media Player" executable="vlc">
423 <option name="adaptive_sync" value="false" />
424 </application>
425 <application name="Totem" executable="totem">
426 <option name="adaptive_sync" value="false" />
427 </application>
428 <application name="Dragon Player" executable="dragon">
429 <option name="adaptive_sync" value="false" />
430 </application>
431 <application name="mpv" executable="mpv">
432 <option name="adaptive_sync" value="false" />
433 </application>
434 </device>
435 <!-- vmwgfx doesn't like full buffer swaps and can't sync to vertical retraces.-->
436 <device driver="vmwgfx">
437 <application name="gnome-shell" executable="gnome-shell">
438 <option name="glx_disable_ext_buffer_age" value="true" />
439 <option name="glx_disable_oml_sync_control" value="true" />
440 <option name="glx_disable_sgi_video_sync" value="true" />
441 </application>
442 <application name="Compiz" executable="Compiz">
443 <option name="glx_disable_ext_buffer_age" value="true" />
444 <option name="glx_disable_oml_sync_control" value="true" />
445 </application>
446 </device>
447 <device driver="radeonsi">
448 <application name="ARK: Survival Evolved (and unintentionally the UE4 demo template)" executable="ShooterGame">
449 <option name="radeonsi_clear_db_cache_before_clear" value="true" />
450 </application>
451 <application name="No Mans Sky" executable="NMS.exe">
452 <option name="radeonsi_zerovram" value="true" />
453 </application>
454 <application name="Civilization 6" executable="Civ6">
455 <option name="radeonsi_enable_nir" value="true"/>
456 </application>
457 <application name="Civilization 6" executable="Civ6Sub">
458 <option name="radeonsi_enable_nir" value="true"/>
459 </application>
460 </device>
461 </driconf>