-
Notifications
You must be signed in to change notification settings - Fork 4
/
falloutnv.html
1435 lines (1396 loc) · 88.2 KB
/
falloutnv.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>FNV Performance Guide</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="A guide to making Fallout: New Vegas run smoother. Hopefully. Covers DXVK, Alt-Tabbing, stutters and frametimes.">
<meta property="og:title" content="Fallout: New Vegas Performance and Stability Guide">
<meta property="og:type" content="article">
<meta property="og:url" content="https://performance.moddinglinked.com">
<meta property="og:image" content="https://performance.moddinglinked.com/img/ui/logo.webp">
<meta property="og:description" content="A guide to making Fallout: New Vegas run smoother. Hopefully. Covers DXVK, Alt-Tabbing, stutters and frametimes.">
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#292329">
<meta name="keywords" content="Fallout New Vegas, FNV, FalloutNV, FPS, Performance, Fallout, FPS Limit, Riva Tuner, RTSS, Stutter, Lag, Latency, Hitches, Flip Model, DXGI, Interop, Nvidia, HDR">
<link rel="icon" type="image/x-icon" href="img\favicon.webp">
<script src="javascript.js"></script>
<link rel="manifest" href="manifest.json">
<link rel="stylesheet" href="css/styles.css">
<link rel="stylesheet" href="css/cards.css">
<link rel="stylesheet" href="css/header.css">
<link rel="stylesheet" href="css/progressBar.css">
<link rel="stylesheet" href="css/sidebar.css">
<link rel="stylesheet" href="css/images.css">
<link rel="stylesheet" href="css/flip.css">
<link rel="stylesheet" href="css/guideColors.css">
<meta http-equiv='content-language' content='en-us'>
<link rel="canonical" href="https://performance.moddinglinked.com">
</head>
<body class="theme dark-scheme">
<div class="progress-container">
<div class="progress-bar"></div>
</div>
<div class="container">
<div class="header">
<div class="headerMenu" onclick="toggleNav()">
<img src="./img/UI/Navigation.svg" id="navButton">
</div>
<div class="headerTitle">
<a href="./falloutnv.html" id="headerTitle">Fallout: New Vegas Performance Guide</a>
</div>
</div>
<div class="sidebar left-sidebar">
<p class="pageLinks">
<a href="#Introduction" title="Introduction">
Introduction
</a>
<a href="#Terminology" title="Terminology">
Terminology
</a>
<a href="#EngineOptimizations" title="lStewieAl's Engine Optimizations">
Engine Optimizations
</a>
<a href="#NVTF" title="New Vegas Tick Fix">
New Vegas Tick Fix
</a>
<a href="#FogCulling" title="Fog-based Object Culling">
Fog Culling
</a>
<a href="#zlibUpdated" title="zlib Updated">
zlib
</a>
<a href="#DriversAndOS" title="Graphics Drivers and Windows">
Drivers and Windows
</a>
<a href="#DisplayModeComparison" title="Display modes">
Display modes
</a>
<a href="#DXVK" title="DXVK">
DXVK
</a>
<a href="#RecommendedLimiters" title="FPS Limits">
FPS Limits
</a>
<a href="#FAQ" title="FAQ">
FAQ
</a>
<a href="#Finish" title="Finish">
Finish
</a>
</p>
</div>
<div class="content">
<!-- Introduction -->
<div class="section">
<span id="Introduction" onclick="location.href='#Introduction'">
<h2>Introduction</h2>
</span>
<div class="card flex logo-container">
<div>
<p>
<h3>Welcome!</h3>
Goal of this guide is to fix the abysmal performance in Fallout: New Vegas by using more modern technologies and tweaks, and make you generally aware of its quirks and other potential issues.
</p>
<p>
The guide is mostly written with an assumption that you've completed <b>Utilities</b> sections from
<a href="https://vivanewvegas.moddinglinked.com/utilities.html" target="_blank">Viva New Vegas</a>
or <b>Essentials</b> from
<a href="https://thebestoftimes.moddinglinked.com/essentials.html" target="_blank">The Best of Times</a>,
but it'll still cover mods contained within those guides.
</p>
<p>
While the guide is focused on this particular game, most stuff shown here is applicable to other games.
</p>
<p>
Content presented here may seem insanely long, but that's really just because I'm trying to explain everything in detail to reduce further questions and confusion - sadly there's a lot of "gotchas" when it comes to PC hardware and its configurations.
<br>
Most abbreviations are explained in <a href="#Terminology">Terminology</a> section, and can always be hovered over to see their full name.
<br>
If you find some sections confusing, feel free to ask on <a href="https://discord.gg/S99Ary5eba" target="_blank">Discord</a>.
</p>
</div>
<div>
<img src="img/ui/logo.webp" id="logo" alt="Logo of a Vault-Boy with glasses typing on a computer">
</div>
</div>
<div class="card">
<p>
<h3>Why?</h3>
</p>
<p>
Let's be honest here, the engine did not age well. The renderer is based on now 22 year old DirectX 9, which fails to fit-in with modern GPUs and Windows.
It's extremely inefficient and CPU bound, has glaring issues with display modes, memory handling and overall stability.
<br>
As for Bethesda's code - it also fails (horribly) to scale well with modern processors, something that you can see even in their latest titles.
<br>
To make things worse, Fallout: New Vegas was compiled without compiler optimizations, which while making engine modding easier, reduces the overall performance.
</p>
<p>
In short most performance issues can be summed with two words: <b>CPU bottleneck</b>.
</p>
<p>
Even with that fact in mind, there are some tweaks to be done on the GPU and presentation side of things that can help with the overall responsiveness of the game, despite not fixing the performance on its own.
</p>
</div>
</div>
<!-- Terminology -->
<div class="section">
<span id="Terminology" onclick="location.href='#Terminology'">
<h2>Terminology</h2>
</span>
<div class="card">
<h3>Things You Should Know</h3>
<ul>
<li id="VSync">
<b>Vertical Synchronization (V-Sync)</b> - technology allowing to keep display's scanout and refresh in phase to eliminate screen tearing,
at the cost of higher latency.
<br>
(Latency lowers along with refresh rate)
</li>
<li id="VRR">
<b>G-Sync | FreeSync</b> - <b>Variable Refresh Rate (VRR)</b> technologies developed by NVIDIA and AMD respectively.
They allow the display to adapt its refresh rate to the framerate, allowing to use V-Sync at arbitrary framerates and reduce its latency<sup><a title="Why?" href="#annotation1">[1]</a></sup> .
</li>
<li id="MPO">
<b>Multiplane Overlays (MPOs)</b> - hardware scanout planes for the GPU. They allow for hardware image composition without any latency or performance penalty (for example displaying windows on top of each other), as well as
their hardware scaling and stretching.
MPOs are supported since Windows 8.1. Hardware capabilities vary between GPU manufacturers.
</li>
<li id="latency">
<b>Input Latency (lag)</b> - time between input event (mouse click, keyboard press) and the event being displayed on the screen. The lower the latency, the more responsive the game feels.
<br>
There are multiple sources of latency, varying from GPU/CPU usage, display mode, framerate count and many more - most of them are covered in this guide.
</li>
</ul>
<span class="annotations">
<ol>
<li id="annotation1">
Yes, despite popular misinformation, VRR alone doesn't get rid of tearing. It can minimize the rolling tear however, but that varies between displays, and such, it's not a guaranteed feature.
Additionally, the latency reduction applies <b>only</b> at framerates below V-Sync window (display's native refresh rate) - if framerate matches the native refresh rate, VRR engages V-Sync emulation.
</li>
</ol>
</span>
</div>
<div class="expander-top clickable" onclick="expandCard(this, flipTalk)" id="flipTalkTop">
<div>
<p>
<h3>Technicalities</h3>
More text inside. Explains the concept of presentation models and display modes. While not needed to use the guide, it'll help you with understanding why things are the way they are.
</p>
</div>
<img class="chevron" style="float: right;" src="img/ui/Chevron Down.svg" alt="UI element - Chevron">
</div>
<div class="expander-bottom" id="flipTalk">
<p>
<ul>
<li><b>Presentation models:</b></li>
<ul>
<li id="Flip">
<b>Flip Model</b> - presentation model first added in Windows 7 with D3D9Ex and upgraded in DXGI in Windows 8-10.
<br>
Allows "fullscreen-level" of performance and latency. Has native VRR support in Windowed Mode. Additionally, DXGI version supports tearing (V-Sync off) in Windowed Mode, HDR and has Multiplane Overlay (MPO) support.
<br>
DXGI variant is supported only in D3D10 and upwards<sup><a title="Why?" href="#annotation2">[2]</a></sup>, enforced only in D3D12, and exists only on Windows 8 and upwards.
<br>
D3D9Ex Flip Model is not feature matched and lacks any DXGI improvements.
<br>
More information <a href="https://devblogs.microsoft.com/directx/dxgi-flip-model/" target="_blank">here</a>.
</li>
<li id="BitBlt">
<b>BitBlt Model</b> - older presentation model used by most applications.
While performing similarly to Flip Model in Fullscreen, in Windowed Mode it has worse performance and always-on V-Sync on top of already additional latency caused by additional copy operations due to being software composed.
<br>
The only presentation model for Windowed D3D9 (and lower), but still very common in D3D10 and D3D11 games.
<p>
Vulkan and OpenGL<sup><a title="Why?" href="#annotation3">[3]</a></sup> use BitBlt in Windowed Mode.
</p>
</li>
</ul>
<li>
<b>Display modes:</b>
</li>
<ul>
<li id="FSE">
<b>Fullscreen Exclusive (FSE)</b> - legacy method of displaying content where application takes complete ownership of the screen.
Has slow Alt-Tab due to display ownership transfer, can be problematic if games are badly coded and switch to odd resolutions or refresh rates by default. Can lose color profiles.
Despite that, it offers the best feature compatibility and perfomance for games that don't use Flip Model. Deprecated by Fullscreen Optimizations and Windowed with Flip Model for DirectX games.
<br>
Supported by every graphics API other than D3D12
</li>
<li id="FSO">
<b>Fullscreen with Fullscreen Optimizations (Fullscreen Optimizations)</b> - an update to <span class="abbreviation" title="Fullscreen Exclusive" onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">FSE</span> for DirectX added in Windows 10 1803.
<br>
Converts DirectX applications running in <span class="abbreviation" title="Fullscreen Exclusive" onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">FSE</span> mode into a pseudo borderless mode with Flip Model for faster Alt-Tab,
lower latency, better color profile handling, and support for Windowed overlays (Xbox Game Bar, volume and brightness sliders etc.).
<br>
Because of being a Windowed Mode under the hood, it can break e.g. brightness control in old games that modify system gamma instead of window's.
<br>
Enabled by default for every application.
<br>
More information <a href="https://devblogs.microsoft.com/directx/demystifying-full-screen-optimizations/" target="_blank">here</a>.
</li>
<li id="Windowed">
<b>Windowed</b> - method of displaying content in a window, always managed by <span class="abbreviation" title="Desktop Window Manager - Windows component responsible for displaying and managing windows">DWM</span>. Due to being a window, Alt-Tab is fast, and color profiles usually don't have any problems.
If not using Flip Model, it has worse performance compared to Fullscreen Optimizations | <span class="abbreviation" title="Fullscreen Exclusive" onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">FSE</span>, lacks native VRR support, has increased input latency and uses always-on V-Sync
</li>
</ul>
</ul>
<span class="annotations">
<ol start="2">
<li id="annotation2">
D3D10 and D3D11 supporting Flip Model doesn't mean that game actually uses it (Unity and UE4 implemented Flip Model support around 2019 - 7 years after its release!).
<br>
Flip Model in Windowed Mode can be enabled in those games using Special K (D3D11 only) or Windows 11's (22H2) Optimizations for Windowed Games (both D3D10 and D3D11).
<br>
Both implementations have good compatiblity, but there are some niche cases where a game can be unsupported by Special K, but supported by Windows - and vice versa.
<br>
Special K is recommended only for single player games due to anti-cheat concerns (it's a mod after all), while Windows' method is safe to use anywhere due to being a system feature.
</li>
<li id="annotation3">
OpenGL can be displayed using D3D11 thanks to Special K, which enables Flip Model and all its benefits along with HDR.
<br>
Nvidia drivers can interop Vulkan and OpenGL to DXGI with Flip Model since driver version 526.
OpenGL interop by default degrades performance, while DXVK compatibility requires toggling a flag in Nvidia Profile Inspector - see <a href="#dxvk-flip">here</a> how to resolve both of these issues.
<br>
AMD drivers have a D3D12 interop for OpenGL that can be toggled by enabling triple buffering in Radeon Settings. Vulkan interop is enabled automatically in windowed mode.
<br>
However, due to how it's implemented, it can cause crashes with games or mods that spawn both D3D12 and OpenGL devices.
</li>
</ol>
</span>
</p>
</div>
</div>
<br>
<br>
<!-- Tweaks -->
<div class="section">
<span id="EngineOptimizations" onclick="location.href='#EngineOptimizations'">
<h2>lStewieAl's Mods</h2>
</span>
<div class="card">
<p>
<h3>Rewritten</h3>
<a href="https://www.nexusmods.com/newvegas/users/2232669" target="_blank">lStewieAl</a> has made a few of mods focused on improving the engine perfomance in multiple aspects (loading, rendering, AI processing).
</p>
</div>
<div class="card-green">
<p>
If you came here from <a href="https://vivanewvegas.moddinglinked.com/utilities.html" target="_blank">Viva New Vegas</a> or <a href="https://thebestoftimes.moddinglinked.com/essentials.html" target="_blank">The Best of Times</a>, you can skip this section and jump right to the <a href="#NVTF">NVTF configuration</a>.
</p>
</div>
<div class="card">
<p>
<h3>Installation</h3>
Download and install the following mods with your mod manager:
<ol>
<li><a href="https://www.nexusmods.com/newvegas/mods/66347" target="_blank" title="lStewieAl's Tweaks and Engine Fixes">lStewieAl's Tweaks and Engine Fixes</a></li>
<li><a href="https://www.nexusmods.com/newvegas/mods/79358" target="_blank" title="Stewie Tweaks - VNV INI">Stewie Tweaks - VNV INI</a> (or the Extended INI)</li>
<li><a href="https://www.nexusmods.com/newvegas/mods/80993" target="_blank" title="lStewieAl's Engine Optimizations">lStewieAl's Engine Optimizations</a></li>
<li><a href="https://www.nexusmods.com/newvegas/mods/67811" target="_blank" title="Faster Main Menu">Faster Main Menu</a></li>
</ol>
</p>
</div>
</div>
<!-- NVTF -->
<div class="section">
<span id="NVTF" onclick="location.href='#NVTF'">
<h2>New Vegas Tick Fix</h2>
</span>
<div class="card">
<p>
<h3>Stutter Remover</h3>
New Vegas Tick Fix is a mod by <a href="https://www.nexusmods.com/newvegas/users/31254295" target="_blank">karut</a> that fixes and improves game's internal clocks and memory management, which dramatically reduces stutter.
<br>
It also allows playing above 60 FPS without breaking physics, although the recommended limit should be set to 120 FPS or below.
<br>
Additionally, it has some DirectX changes, which help with performance and greatly reduce memory usage.
</p>
</div>
<div class="card">
<p>
<h3>Installation</h3>
<ol>
<li>
<p>
Download <a href="https://www.nexusmods.com/newvegas/mods/66537" target="_blank" title="New Vegas Tick Fix">NVTF</a> and install it with your mod manager. You should already have this after following VNV or TBoT.
</p>
</li>
<li>
<p>
Install the <a href="https://www.nexusmods.com/newvegas/mods/81231" target="_blank" title="NVTF Texture Modding Preset">NVTF Texture Modding Preset</a>, then make sure that it's loaded after NVTF or any other presets.
</p>
<div class="card-red">
<p>
This preset does multiple things:
</p>
<ul>
<li>
<div class="card-basic">
<p>
bToggleTripleBuffering = 1
</p>
</div>
<p>
This change has no effect if you don't use V-Sync and its potential latency increase is eliminated by properly capping FPS, which is covered later in the guide.
</p>
</li>
<li>
<div class="card-basic">
<p>
bUseDefaultPoolForTextures = 1
</p>
</div>
<p>
Disables texture mirroring between VRAM and RAM, which decreases RAM usage and allows using high resolution textures.
<br>
<br>
<b>This change breaks Alt-Tab functionality in Fullscreen Mode.<sup><a title="Why?" href="#annotation4">[4]</a></sup></b>
<br>
To mitigate that, either use <a href="#DXVK">DXVK</a>, <a href="#FAQ">Windowed Mode</a> or just avoid Alt-Tabbing. This is also covered later in the guide.
</p>
</li>
</ul>
</p>
</div>
</li>
</ol>
<hr>
<span class="annotations">
<ol start="4">
<li id="annotation4">
D3D9 loses the graphics device if it loses the screen ownership (Alt-Tab, Sleep, etc.). To recover, it needs to either have a copy of textures in RAM, or be able to reconstruct the memory from ground up.
<br>
Fallout: New Vegas, like most D3D9 games, use the first method. Thus by disabling this behavior, after Alt-Tabbing, game is in a limbo where it doesn't know what to do.
<br>
DXVK fixes this by simply being in place of D3D9, while Windowed mode guarantees the game will never own the screen in the first place.
</li>
</ol>
</span>
</p>
</div>
</div>
<!-- Fog-based Culling -->
<div class="section">
<span id="FogCulling" onclick="location.href='#FogCulling'">
<h2>Fog-based Object Culling</h2>
</span>
<div class="card">
<p>
<h3>Occluded</h3>
Simple mod I made to help in areas like Dead Money or Point Lookout, which are very densely packed with objects, yet have a lot of fog hiding them.
Dynamically adjusts draw distance in accordance with the fog to improve performance with little to no visual difference.
</p>
<div class="card-yellow">
<p>
Using this mod will prevent you from configuring draw distance settings in-game. Please use the launcher or INI to configure them.
</p>
</div>
</div>
<div class="card">
<p>
<h3>Installation</h3>
<ol>
<li>
<p>
Download <a href="https://www.nexusmods.com/newvegas/mods/79516" target="_blank" title="Fog-based Object Culling">Fog-based Object Culling</a> and install it with your mod manager.
</p>
</li>
</ol>
</p>
</div>
</div>
<!-- zlib Updated -->
<div class="section">
<span id="zlibUpdated" onclick="location.href='#zlibUpdated'">
<h2>zlib Updated</h2>
</span>
<div class="card">
<p>
<h3>Compressed</h3>
Fallout: New Vegas uses <a href="https://www.zlib.net/" target="_blank">zlib</a> compression for its BSA archives and plugins (NPC and Landscape records).
<br>
zlib on its own does not belong to the fastest compression algorithms, and the version used by Bethesda is older than the game itself, which only makes things worse.
<br>
By simply updating the library to the latest version, you can cut the time spent on decompression in <b>half</b>, which leads to faster loading times and less stuttering.
<div class="card-yellow">
<p>
This mod works only in cases where you actually <b>have</b> such compressed data in the first place.
<br>
Most mods from 2024 should not have plugin compression, and we decompress vanilla game files using <a href="https://www.nexusmods.com/newvegas/mods/65854" target="_blank">BSA Decompressor</a> or by <a href="https://taleoftwowastelands.com/" target="_blank">Tale of Two Wastelands</a>. In such cases, this mod won't have any effect, as there's nothing to do in the first place.
<br>
<br>
Unfortunately, there are a lot of older (and even new) mods with compression applied (even <a href="https://www.nexusmods.com/newvegas/mods/51664" target="_blank">Yukichigai Unofficial Patch - YUP</a> itself).
<br>
In such cases it's recommended to actually decompress your plugins, which can be very easily done by following <a href="https://vivanewvegas.moddinglinked.com/decompress.html" target="_blank">this guide</a>. Prevention is better than mitigation, and costs nothing.
<br>
<br>
Mods with BSA archives are already rare on Nexus, and usually recent, so most often they are not using compression, or deliberately compressed due to their large sizes. Using the plugin in such cases is more sensible.
</p>
</div>
</p>
</div>
<div class="card">
<p>
<h3>Installation</h3>
<ol>
<li>
<p>
Download <a href="https://www.nexusmods.com/newvegas/mods/85267" target="_blank" title="zlib Updated - NVSE">zlib Updated - NVSE</a> and install it with your mod manager.
</p>
</li>
</ol>
</p>
</div>
</div>
<!-- Drivers and Windows-->
<div class="section">
<span id="DriversAndOS" onclick="location.href='#DriversAndOS'">
<h2>Graphics Drivers and Windows</h2>
</span>
<div class="card">
<p>
<h3>Driver Updates</h3>
<p>
Not much to say here - for the best compatibility and performance, you <b>must</b> be using the newest driver for your graphics card.
<br>
<br>
You can check what GPU you have by opening Task Manager, and going to the Performance tab - the last GPU in the left pane should be your main one.
<br>
If you don't see any GPU there, that means your GPU is too old to use DXVK.
<div class="card-red">
<p>
<b>IMPORTANT WARNING TO AMD USERS:</b>
<br>
Drivers between 24.1.1 and 24.5.1 will crash the game, so make sure that you have the <a href="https://www.amd.com/en/support" target="_blank">latest drivers</a>! Atleast <b>24.6.1</b> or newer.
<br>
<br>
Alternatively, later in the guide you'll be able to fix these crashes by using <a href="./falloutnv.html#DXVK">DXVK</a>.
</p>
</div>
<table class="center" style="width: 100%; height: 96px;">
<tr>
<th colspan="3">
<h3 class="center">Select your graphics card to go the driver download page</h3>
</th>
</tr>
<tr>
<th>
<a href="https://www.nvidia.com/download/index.aspx" target="_blank">
<button class="button-big" id="nvidiaButton">
<b>
NVIDIA
</b>
</button>
</a>
</th>
<th>
<a href="https://www.amd.com/en/support/download/drivers.html" target="_blank">
<button class="button-big" id="amdButton">
<b>
AMD
</b>
</button>
</a>
</th>
<th>
<a href="https://www.intel.com/content/www/us/en/search.html#sort=relevancy&f:downloadtype=[Drivers]&f:@tabfilter=[Downloads]&f:@stm_10385_en=[Graphics]" target="_blank">
<button class="button-big" id="intelButton">
<b>
INTEL
</b>
</button>
</a>
</th>
</tr>
</table>
</p>
</p>
</div>
<div class="card">
<p>
<h3>Multiplane Overlays and Windows Watermark</h3>
<p>
<div class="card-yellow">
<p>
This part applies only to <b>D3D9 with Fullscreen Optimizations</b> and <b>DXVK with DXGI</b>, since D3D9 Windowed is already in the <span class="abbreviation" title="Desktop Window Manager - Windows component responsible for displaying and managing windows">DWM</span> composed mode, and DXVK uses <span class="abbreviation" title="Fullscreen Exclusive" onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">FSE</span>.
<br>
You can ignore this section if you have following GPUs:
<ul>
<li>Nvidia 16 series and newer</li>
<li>AMD Vega and newer (single display only)</li>
<li>Intel CPUs 8th Gen and newer</li>
</ul>
</p>
</div>
</p>
<p>
Make sure your Windows is activated, otherwise the watermark will kick the game into the <span class="abbreviation" title="Desktop Window Manager - Windows component responsible for displaying and managing windows">DWM</span> composition, which leads to increased latency, worse performance and disables VRR.
<br>
If you don't have a GPU with <a href="#Terminology">MPO (Multiplane Overlay)</a> support, you can mitigate this by disabling Fullscreen Optimizations.
<br>
(Keep in mind that this trick won't work on modern, D3D12 games, so it's still recommended to just activate Windows)
<br>
<br>
How to check if your GPU supports MPOs:
<ol>
<li>
Type <b class="card-basic">dxdiag</b> into Windows search
</li>
<li>
Click <b>Save All Information</b> and save the file.
</li>
<li>
Open the <b class="card-basic">DxDiag.txt</b> file, press <b class="card-basic">Ctrl+F</b> and look for <b class="card-basic">MPO MaxPlanes</b>
</li>
<li>
If the number is <b>greater than 1</b>, then your GPU has MPO support.
</li>
</ol>
</p>
<p>
<div class="card-red">
<p>
Having the watermark without MPOs will disable VRR and increase input latency and stuttering!
</p>
</div>
</p>
</p>
</div>
<div class="card">
<p>
<h3>Virtualization</h3>
Windows 11 uses virtualization features to increase system and inter-process security. Unfortunately, this can come at a performance cost, especially on lower-end hardware.
<br>
I won't be writing on how to disable them, because... <a href="https://support.microsoft.com/en-us/windows/options-to-optimize-gaming-performance-in-windows-11-a255f612-2949-4373-a566-ff6f3f474613" target="_blank">Microsoft already made a tutorial about it</a>.
<br>
<br>
This step is not mandatory, as when it comes to security, it's up to you to decide. Just letting you know that this exists, and that even Microsoft acknowledges the fact that it can degrade perfomance.
</p>
</div>
<div class="card">
<p>
<h3>Power Plans and Modes</h3>
With Windows 10, Microsoft introduced <a href="https://learn.microsoft.com/en-us/windows-hardware/customize/power-settings/configure-processor-power-management-options" target="_blank">power modes</a>, which are meant to be replacement for power plans in terms of power and perfomance management.
<br>
Power modes require the <b>Balanced power plan</b> to be active to work. If you're any other power plan, you won't be able to use them (On most modern systems, you may find that you don't even have other power plans at all because of this).
<br>
<br>
To change your power mode, go to <a href="ms-settings:powersleep">Power</a> settings, and select whatever highest performance option you have if the dropdown menu.
<div class="card-yellow">
<p>
On some older, or custom built machines you may not have selectable power modes at all - in that case, all that matters is just having the <b>Balanced power plan</b> active.
</p>
<p>
If you are on a laptop, power modes are saved per connecton state - selecting a mode while on battery will not change the mode when you plug in the charger, and vice versa.
</p>
</div>
<div class="card-red">
<p>
<h3>Warning!</h3>
Using custom power plans is not recommended due to how integral the <b>Balanced power plan</b> is to Windows 10 and 11 at the low level.
<br>
It can break power management on modern hardware, and can lead to increased power consumption and/or decreased performance (or even mess up things like fan speed).
<br>
<br>
It is safer to customize the <b>Balanced power plan</b> to your liking, rather than using a custom one. (We all can agree this is not intuitive at all).
</p>
</div>
</p>
</div>
<div class="card">
<p>
<h3>Game Mode</h3>
Windows 10 introduced a feature called <a href="ms-settings:gaming-gamemode">Game Mode</a>, which puts the system in a more gaming-friendly state.
<br>
Game Mode is a "power mode overlay", which means it requires power modes to work - the Balanced power plan must be active.
</p>
<p>
Game Mode features:
<ul>
<li>
Enables AutoHDR for DXGI based games.
</li>
<li>
Enables VRR optimizations for games using Flip Model - Forces the screen to sync to game's refresh rate instead of any windows that may be on top of it.
</li>
<li>
Disables Windows Update.
</li>
<li>
Disables notifications.
</li>
<li>
Disables file indexing, if "Respect Device Power Mode Settings" is enabled in <a href="ms-settings:search">Search settings</a>.
</li>
<li>
Enables CPU scheduling optimizations for Ryzen CPUs.
</li>
</ul>
</p>
<p>
Game Mode is enabled by default. If you had it disabled for some reason, you can enable it <a href="ms-settings:gaming-gamemode">here</a>.
</p>
</div>
</div>
<!-- DisplayModeComparison -->
<div class="section">
<span id="DisplayModeComparison" onclick="location.href='#DisplayModeComparison'">
<h2>Display Mode Differences</h2>
</span>
<div class="card">
<p>
<h3>Presentation Problems</h3>
Here's a comparison of three display modes you can use in this game. Situation is problematic mainly due to Vulkan and D3D9 using old <a href="#Flip" onclick="expandCard(flipTalkTop, flipTalk, 1)">presentation models</a>.
<br>
<br>
This section is purely informative, just to let you know what options you have and what to expect from them.
<div class="comparison">
<table class="comparison-table">
<tr>
<th>
<h2 onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'" title="Click to see detailed explanations">
Flip Model Windowed
<br>
(DXVK with DXGI)
</h2>
</th>
<th>
<h2 onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'" title="Click to see detailed explanations">
Legacy/Optimized Fullscreen
</h2>
</th>
<th>
<h2 onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'" title="Click to see detailed explanations">
BitBlt Model Windowed
<br>
(D3D9, Base DXVK)
</h2>
</th>
</tr>
<tr>
<td class="card-green">
<ul>
<li>Best latency and performance</li>
<li>Variable Refresh Rate works without any problems</li>
<li>
HDR output (Requires DXVK)
</li>
<li>
Fast Alt-Tab
</li>
<li>
Native support for color profiles
</li>
</ul>
</td>
<td class="card-green">
<ul>
<li>Best latency and performance, especially with <span onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">Fullscreen Optimizations</span></li>
<li>Variable Refresh Rate works without any problems</li>
</ul>
</td>
<td class="card-green">
<ul>
<li>
Fast Alt-Tab
</li>
<li>
Better support for color profiles
</li>
</ul>
</td>
</tr>
<tr>
<td class="card-red">
<ul>
<li>
In-Game brightness settings don't work
</li>
<li>
Nvidia's interop increases memory usage by about 150-170MB,
<br>
and requires some manual setup to work with DXVK.
</li>
<li>
Potential compatibility issues with overlays that can't properly discern between DXGI and Vulkan surfaces.
</li>
</ul>
</td>
<td class="card-red">
<ul>
<li>
Slower and unstable Alt-Tab, especially without <span onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">Fullscreen Optimizations</span>
</li>
<div class="card-yellow">
<p>
Alt-Tab <b>doesn't work at all</b> if <b><a href="#NVTF" title="New Vegas Tick Fix">NVTF</a>'s pool change</b>
is <b>enabled</b>, unless you use <b><a href="#DXVK" title="Vulkan - DXVK">DXVK</a></b>
</p>
</div>
<li>
Color profiles may disengage, especially without <span onclick="expandCard(flipTalkTop, flipTalk, 1); location.href='#Flip'">Fullscreen Optimizations</span>
</li>
<li>
When using DXVK, degrades performance on Nvidia laptops and AMD GPUs.
<br>
DXGI Interop with Flip Model must be used instead.
</li>
<li>
HDR can be unstable - colorspace may be incorrect, and can cause issues on Alt-Tab, especially on AMD GPUs.
</li>
</ul>
</td>
<td class="card-red">
<ul>
<li>
High input lag and worse performance, especially when not using any FPS limiter and/or using a laptop
</li>
<li>
V-Sync is always on<sup><a title="Why?" href="#annotation5">[5]</a></sup>
</li>
<li>
Variable Refresh Rate doesn't work natively
</li>
<ul>
<li>
AMD supports FreeSync in BitBlt windows that are fullscreen, but latency and performance penalties remain
</li>
<li>
Nvidia's G-Sync support for BitBlt windows is broken<sup><a title="Why?" href="#annotation6">[6]</a></sup>
</li>
</ul>
<li>
In-Game brightness settings don't work
</li>
<li>
Higher memory bandwidth and usage
</li>
<li>
No HDR support
</li>
</ul>
</td>
</tr>
</table>
</div>
<span class="annotations">
<ol start="5">
<li id="annotation5">
Despite that disabled V-Sync unlocks the framerate, window itself is V-Synced, so you don't get any benefits.
</li>
<li id="annotation6">
While AMD enables FreeSync for Fullscreen Windowed BitBlt surfaces, Nvidia allows G-Sync to run with <i>any</i> window.
<br>
This is problematic because refresh rate can get synchronized to wrong windows, framerate may break on other displays and display stutters may occur.
<br>
Enabling it globally is a bad idea, because it disrupts normal desktop usage (e.g. screen can sync to sleeping windows).
<br>
It's recommended to use <a href="https://github.com/Orbmu2k/nvidiaProfileInspector/releases/latest" target="_blank">Nvidia Profile Inspector</a> to set <b>G-Sync Application Mode</b> to
"<b>Fullscreen and Windowed</b>" in <b>Fallout - New Vegas</b> profile. This makes Windowed G-Sync run only when the game is running.
<br>
<b>Keep in mind that even with this method, this G-Sync implementation is still buggy - if you get any of the forementioned issues, disable it.</b>
<br>
<h4>Never enable Windowed G-Sync globally!</h4>
</li>
</ol>
</span>
</p>
</div>
</div>
<!-- DXVK -->
<div class="section">
<span id="DXVK" onclick="location.href='#DXVK'">
<h2>DXVK</h2>
</span>
<div class="card">
<p>
<h3>Translation Magic</h3>
DXVK is an open source Direct3D 9-11 to Vulkan translator project lead by <a href="https://github.com/doitsujin">Philip Rebohle (doitsujin)</a> and <a href="https://github.com/Joshua-Ashton">Joshua Ashton</a>. While created mainly for Linux, works <u>unofficially</u> on Windows.
<br>
In short, it allows you to run Fallout using the Vulkan API which has much lower draw call overhead than D3D9, which is one of the main performance limiting factors in this game.
<div class="card-green">
<p>
If you play on Linux, you are already using DXVK! You can skip this section.
</p>
</div>
<div class="card-red">
<p>
<h3>Things about DXVK you must acknowledge:</h3>
<ul>
<li>
<p>
DXVK improves performance in mainly draw call (CPU) bound scenarios (e.g. draw distance), and usually doesn't help much in GPU bound ones (e.g. resolution)
<ul>
<li>
<p>
It is possible that DXVK won't change anything for you, or even make things worse
</p>
</li>
</ul>
</p>
</li>
<li>
<p>
You may experience increased stutter at the beginning of your playthrough due to shader compilation.
</p>
</li>
<li>
<p>
DXVK's GPU compatibility varies between manufacturers
<ul>
<li>
<p>
<b>Nvidia GPU</b> laptops <b>must</b> use the <a href="#dxvk-flip">DXGI interop</a> (see below).
<br>
Using it on <b>desktops</b> is not required, but <b>highly recommended</b> for the most optimal experience
</p>
</li>
<li>
<p>
<b>AMD GPUs must</b> use the <a href="#dxvk-flip">DXGI interop</a> (see below), otherwise they will suffer from severe performance issues or fail to launch the game.
<br>
Shader issues are more common on Windows compared to other GPUs (situation is completely reversed on Linux).
<br>
</p>
</li>
<li>
<p>
<b>Intel GPUs</b> from 6th Gen and newer can work provided you have <a href="https://www.intel.com/content/www/us/en/search.html#sort=relevancy&f:downloadtype=[Drivers]&f:@tabfilter=[Downloads]&f:@stm_10385_en=[Graphics]" target="_blank">newest drivers</a>
installed.
<br>
On some iGPUs, DXVK is broken past the 1.10.1 version.
<br>
</p>
</li>
</ul>
</p>
</li>
<li>
<p>
Fallout: New Vegas has some known shader issues or quirks. They are not guaranteed to happen (getting rarer with DXVK updates), but they can occur:
<ul>
<li>Transparency multisampling uses dithering - (Vulkan handles alpha to coverage differently than drivers)</li>
<ul>
<li>
If you are an AMD, RADV Linux user, you can disable this behavior by setting <b class="card-basic">RADV_DEBUG=noatocdithering</b> environment variable.
</li>
</ul>
<li>Blood decals can suffer from color overflow and turn white - Fixed by <a href="https://www.nexusmods.com/newvegas/mods/87830" target="_blank">Blood Decal Flashing Fix</a></li>
</ul>
</p>
</li>
</ul>
</p>
</div>
</p>
</div>
<div class="card" id="dxvk-HDR">
<p>
<h3>HDR-Mod</h3>
HDR-Mod is a DXVK mod made by <a href="https://github.com/EndlesslyFlowering" target="_blank">Lilium (aka EndlesslyFlowering)</a> and <a href="https://github.com/WallSoGB" target="_blank">me</a> with the intention of adding HDR functionality to D3D9 games.
Effectively it does 2 major things:
<ul>
<li>
<p>
Allows to display the game in HDR (10 or 16 bit).
</p>
</li>
<li>
<p>
Upgrades the precision with which the game calculates colors, greatly reducing banding - as long as you have a 10 bit display or better.
</p>
</li>
</ul>
<br>
DXVK <b>doesn't perform any HDR</b> tone mapping, so you need to use <a href="https://github.com/Filoppi/PumboAutoHDR" target="_blank">Pumbo's ReShade AutoHDR</a>.
<br>
Failing to do so will result in washed out colors and incorrect brightness.
<div class="card-yellow">
<p>
<h4>Screenshot Tonemapping</h4>
Game's built-in screnshot function doesn't support HDR, so you need to use Game Bar, Steam or Nvidia Overlay to take screenshots.
</p>
</div>
</p>
</div>
<div class="card">
<h3>Installation</h3>
<ol>
<li>
<p>
Manually download the latest <a href="https://www.nexusmods.com/newvegas/mods/79299?tab=files" target="_blank">DXVK version</a> from Nexus.
</p>
<div class="card-green">
<p>
If you have a <b>HDR display</b>, you can select the <b>HDR version</b> mentioned above.
</p>
</div>
<div class="card-red">
<p>GPUs lacking Vulkan 1.3 support or having issues with 2.0, must use the <b><a href="https://www.nexusmods.com/Core/Libs/Common/Widgets/DownloadPopUp?id=1000102854&game_id=130" target="_blank">1.10.3 version</a></b>.</p>
<p>Some <b>Intel iGPUs</b> need to use the <b><a href="https://www.nexusmods.com/Core/Libs/Common/Widgets/DownloadPopUp?id=1000102855&game_id=130" target="_blank">1.10.1 version</a></b>.</p>
</div>
</li>
<li>
<p>
Extract archive contents into your <b>Fallout: New Vegas root folder</b>.
</p>
</li>
<li>
If you have chosen the HDR version, download <a href="https://www.nexusmods.com/newvegas/mods/82985" target="_blank">HDR Save Image Patch</a> and install it with your mod manager.
</li>
</ol>
</p>
</div>
<div class="card">
<p>
<h3 id="dxvk-flip">Enabling Flip Model (DXVK with DXGI)</h3>
Nvidia and AMD drivers have ability to use DirectX to display Vulkan games allowing for <a href="#Flip" onclick="expandCard(flipTalkTop, flipTalk, 1)">Flip Model</a> in Windowed mode, which has <b>HDR</b> and <b>VRR</b> support, and better <b>latency</b>.
<div class="card-red">
<p>
This step is mandatory for <b>Nvidia laptops</b> and <b>AMD GPUs</b> to work with DXVK, otherwise you will suffer heavy performance issues.
</p>
<p>
If you chose to install the HDR version of DXVK, you also <b>must</b> use this method.
</p>
<p>
Nvidia desktops can, and are recommended to use it for the best experience, but ultimately it's optional.
</p>
</div>
<div class="expander-top clickable center width-limited" onclick="expandCard(this, nvidiaFlipExpander)" id="nvidiaFlip">
<div>
<p>
<h3>
Nvidia
</h3>
</p>
</div>
<img class="chevron" style="float: right;" src="img/ui/Chevron Down.svg" alt="UI element - Chevron">