Introduction

Welcome!

This guide will try to help you optimizing your Fallout: New Vegas for better, smoother experience.
While the guide is focused on this particular game, most stuff shown here is applicable to other games.

The guide is mostly written with an assumption that you've completed Utilities section from either Wasteland Survival Guide or Viva New Vegas, but it'll still cover mods contained within those two guides.

Terminology

Things that are good to know

  • Vertical Synchronization (V-Sync) - technology allowing to keep display's scanout and refresh in phase to eliminate screen tearing, at the cost of higher latency
    (Latency lowers along with refresh rate)
  • G-Sync | Freesync - Variable Refresh Rate (VRR) technologies developed by NVIDIA and AMD respectively. They allow the display to adapt its refresh rate to the framerate, which in turn allows for stutter reduction and tear-free display of unstable framerate[1], and with a proper FPS cap - lower latency compared to V-Sync
  • Presentation models:
    • Flip Model - presentation model first added in Windows 7 with D3D9Ex and upgraded in DXGI in Windows 8-10.
      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.
      DXGI variant is supported only in D3D10 and upwards[2], enforced only in D3D12, and exists only on Windows 8 and upwards.
      D3D9Ex Flip Model is not feature matched and lacks any DXGI improvements.
      More information here
    • BitBlt Model - 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.
      The only presentation model for Windowed D3D9 (and lower), but still very common in D3D10 and D3D11 games.

      Vulkan and OpenGL[3] use BitBlt in Windowed Mode.

  • Display modes:
    • Fullscreen Exclusive (FSE) - 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 FSO and Windowed with Flip Model for DirectX games.
      Supported by every graphics API other than D3D12
    • Fullscreen with Fullscreen Optimizations (FSO) - an update to FSE for DirectX added in Windows 10 1803.
      Converts DirectX applications running in FSE 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.).
      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.
      Enabled by default for every application.
      More information here
    • Windowed - method of displaying content in a window, always managed by DWM. 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 FSO | FSE, lacks native VRR support, has increased input latency and uses always-on V-Sync
  1. Emphasis on unstable, because tear-free, no-latency experience is possible with stable framerates on fixed refresh rate displays by hiding the tearline in VBlank (see RTSS Scanline Sync, Special K Latent Sync, FPS Monitor Cyber Sync).
    It requires some tinkering to work though, and is not guaranteed to work on every display at default timings
  2. 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!).
    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)
  3. OpenGL can be displayed using D3D11 thanks to Special K, which enables Flip Model and all its benefits along with HDR.
    Most OpenGL games also get displayed as D3D11 by Nvidia drivers when using Nvidia GPU as a render device, but not as a display output. This happens mostly on laptops, but works on desktops too. Games converted this way don't use Flip Model, so Special K or Windows 11 (22H2) is needed

Graphics Drivers and Windows

Driver Updates

Not much to say here - for the best compatibility and performance, you must be using the newest driver for your graphics card.

You can check what GPU you have by opening Task Manager, and going to the Performance tab - the last GPU on the left pane is your main one.
If you don't see any GPU there, that means your GPU is too old to use DXVK.

This step is mandatory if you want to use DXVK!

Select your graphics card to go the driver download page

Windows

Make sure your Windows is activated, otherwise the watermark will kick the game into the DWM composition. If you don't have a GPU with MPO support, you can mitigate this by disabling Fullscreen Optimizations.

It's still weird to have unactivated Windows though.

Having the watermark without MPOs will disable VRR and increase latency and stuttering!

This applies only to D3D9 with FSO, since windowed is already in the composed mode, and DXVK uses FSE.
If you have:

  • Nvidia 16 series and newer
  • AMD Vega and newer
  • Intel CPUs 8th Gen and newer
You can also ignore it, since these models have Multiplane Overlays which allow for hardware composition.

lStewieAl's Tweaks and Engine Fixes

All-in-one

If you use Viva New Vegas or Wasteland Surival Guide guides, you may skip this step since it's already included there

lStewieAl's Tweaks and Engine Fixes is a mod by... lStewieAl, that does what it says - it adds tweaks and fixes the engine. The scope of this mod can't be overstated.

Installation

  1. If they are not already installed, download lStewieAl's Tweaks and Engine Fixes and Stewie Tweaks INI (Optional Files section) from Nexus and install them with your mod manager.

  2. Launch your game to populate the INI file, then exit
  3. Open nvse_stewie_tweaks.ini in NVSE\Plugins as a text file and edit:

    bInlineVanillaFunctions=1

    This enables some optimizations to vanilla functions, which leads to decreased loading times and improved general performance.

New Vegas Tick Fix

Stutter remover

New Vegas Tick Fix is a mod by karut that fixes and improves game's internal clocks and memory management, which dramatically reduces stutter. It also allows for playing above 60fps without breaking physics.
Additionally, it has some DirectX changes, which help with performance and greatly reduce memory usage.

Installation

  1. If it's not already installed, download NVTF from Nexus and install with your mod manager.

  2. Open NVTF.ini in NVSE\Plugins as a text file and edit:

    bModifyDirectXBehavior=1

    Enables NVTF's DirectX changes.
    Required for following settings to work:
    • bToggleTripleBuffering=1

      Enables triple buffer V-Sync, which gets rid of problematic framerate halving on FPS drops/ instability caused by double buffer V-Sync.

      This change has no effect if you don't use V-Sync
      The potential latency increase is eliminated by properly capping FPS, which is done later in the guide

    • bUseDefaultPoolForTextures=1

      Disables texture mirroring between VRAM and RAM, which decreases RAM usage. Allows to use high resolution textures.
      If you don't plan on using any texture mods, it's not needed.

      This change breaks alt-tab functionality in Fullscreen Mode.
      To mitigate that either use Windowed Mode, or DXVK.
      Or just don't alt-tab.

DXVK

Translation magic

DXVK is an open source Direct3D 9-11 to Vulkan translator project lead by doitsujin and Joshua Ashton. While created mainly for Linux, works unofficially on Windows.
In short, it allows to run Fallout using Vulkan API which has benefits of much lower drawcall overhead than D3D9, which is one of the main performance limiting factors in this game.

Things about DXVK you must acknowledge:

  • DXVK improves performance in mainly drawcall (CPU) bound scenarios (e.g. draw distance), and usually doesn't help much in GPU bound ones (e.g. resolution)

    • It is possible that DXVK won't change anything for you, or even make things worse

  • DXVK's GPU compatibility varies between manufacturers

    • Nvidia GPU laptops with integrated graphics fail to run DXVK properly on Windows, resulting in worse than native performance.
      Unless you can use Nvidia GPU as the display output (e.g. MUX switch), it's recommended to stay away from DXVK on those devices until this issue is fixed

    • AMD GPUs are very prone to shader issues on Windows

    • Intel GPUs from 6th Gen and newer most often work provided you have newest drivers installed.
      DXVK is broken past the 1.10.1 version.
      Don't expect a big performance difference, if any, since the game will still be GPU bound.

  • Fallout: New Vegas has some known shader issues. They are not guaranteed to happen, but they can occur:

    • Broken transparency multisampling - alpha textures are more translucent, and are aliased
    • Broken grass rendering - grass gets a dither effect instead of smooth fade in the distance
    • Broken water reflections
    • Broken lights and artifacting

Due to DXVK's nature it relies on shader cache, which is compiled during the first use of that shader.
Because of that you can experience increased short stutter at the beginning of your playthrough.
This is completely normal, and will not reoccur after compilation has finished.
DXVK-Async alleviates this problem thanks to making the compilation asynchronous

Installation

  1. Open DXVK-Async Github page and click on dxvk-async-1.10.3.tar.gz to download it

    Intel GPUs need to use the 1.10.1 version

  2. Extract d3d9.dll from x32 folder inside downloaded archive to your Fallout: New Vegas root folder

  3. Create dxvk.conf text file and write:

    dxvk.enableAsync = true

    This enables async patch in DXVK.

Display mode differences

Presentation problems

Since both D3D9 and Vulkan don't use Flip Model presentation, they have some trade offs in each display mode. Here is a short comparison between them:

Fullscreen

Windowed

  • Best latency and performance, especially with FSO
  • Variable Refresh Rate works without any problems
  • Fast Alt-Tab
  • Better support for color profiles
  • Slower Alt-Tab, especially without FSO
    • Alt-Tab doesn't work at all if NVTF's

bUseDefaultPoolForTextures

    • is enabled, unless you use DXVK
  • Color profiles may disengage, especially without FSO
  • High input lag and worse performance, especially when not using any FPS limiter
  • V-Sync is always on[4]
  • Variable Refresh Rate doesn't work natively
    • AMD supports Freesync in non-Flip Fullscreen windows, but latency and performance penalties remain
    • Nvidia's G-Sync support for non-Flip windows is broken[5]
  • In-Game brightness settings don't work
  1. Despite that disabled V-Sync unlocks the framerate, window itself is V-Synced, so you don't get any benefits.
  2. While AMD enables Freesync for Fullscreen Windowed non-Flip surfaces, Nvidia allows G-Sync to run with any window.
    This is problematic because refresh rate can get synchronized to wrong windows, framerate may break on other displays and display stutters may occur.
    Enabling it globally is a bad idea, because it disrupts normal desktop usage (e.g. screen can sync to sleeping windows).
    It's recommended to use Nvidia Profile Inspector to set G-Sync Application Mode to "Fullscreen and Windowed" in Fallout - New Vegas profile. This makes Windowed G-Sync run only when Fallout New Vegas is running.
    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.

    Never enable Windowed G-Sync globally!

Recommended framerate limiters and their configurations

(Not) Pushing the limits

Limiting framerate is very important for overall stability. A good limiter will most importantly improve framepacing, reducing microstutter. Other benefits could be reduced latency and power consumption.

Always limit your framerate to an amount you can actually achieve, otherwise you won't get any benefits!
Letting your GPU overwork itself has a big latency impact, so try to cap your framerate at such value, where your GPU doesn't sit at constant 100% usage.
Running at smoother, lower framerate is much better than high, albeit laggy one.

Recommended setups

V-Sync

  • Framerate must be capped slightly below refresh rate to reduce latency

G-Sync | Freesync

  • V-Sync must be enabled, in order to fully get rid of tearing
  • Framerate must be capped below refresh rate, in order for VRR to not disengage and fallback to V-Sync - this causes very big increase in latency
If you play with V-Sync disabled, there's nothing besides the limiter to set up

Finding the limit

Enter your refresh rate here for automatic calculation of FPS limits in the next section. You can find your exact refresh rate here.

If you don't use, or not have VRR, it's best to limit your framerate in full intervals. (30 at 60hz, 72 at 144hz, etc.)

So many options...

Limiters presented here are ordered by their precision, from best to acceptable. The better ones are smoother and can provide better latency reductions, but are not as fast to setup compared to the built-in driver alternatives and may have some compatibility issues.

Special K

Special K is a mod by Kaldaien focused mainly on fixing performance in games and implementing HDR. Its list of features is too long to write here, but the most important one used here is its best-in-class framerate limiter.

Warning!

  • Special K works only on Windows 8.1 and higher
  • Special K may conflict with Riva Tuner. If the game crashes or SK doesn't show up in game, make sure Riva Tuner is not running, or set Riva Runer's injection delay to 30000
  • Special K's UI/OSD breaks water reflections. This is can be fixed by DXVK. On D3D9 the only option is to not have SK visible
    • Ironically, Special K doesn't natively support DXVK, which can sometimes lead to compatibility issues.

I'm not providing calculated values here, because Special K already does that automatically, and with higher precision

Installation

  1. Download the Special K Archive from the Stable section, then extract SpecialK32.dll to your Fallout New Vegas root folder and rename it to dinput8.dll
  2. Launch Fallout New Vegas and press Ctrl + Shift + Backspace to enter Special K Control Panel
  3. Enable the Framerate Limit by ticking the checkbox, then right click on the bar (not graph) next to it:
    • No V-Sync

      In right click menu select your refresh rate

      Optional - Disabled V-Sync with no tearing

      It's best to do this in-game!

      If you use Fullscreen Mode without V-Sync and have stable framerate, in limiter's right click menu select Latent Sync

      In Latent Sync menu, select Visualize Tearlines and use Sync offset slider so the tearing is not visible.
      Disable Visualize Tearlines when you decide you are satisfied with result.
      It is possible that you won't see tearing out of the box.

      Latpops with dedicated GPUs that do not have MUX switches for direct dGPU<->Display connection will have problems with hiding the tearline.
      While it may be impossible to hide it completely, latency benefits are still applicable.

      Some monitors have too small vertical blanking, so it's possible to not fully hide the tearing without timing modifications - if you wish to pursue this topic, create a custom resolution with increased Vertical Blanking in your driver or with Custom Resolution Utility

      It's best to first test the resolution in driver, otherwise you may lock out your display

    • V-Sync

      In right click menu select your refresh rate, then Ctrl-Click on the Framerate Limit bar and subtract 1

    • VRR + V-Sync

      In right click menu select VRR Bias and select the highest value.

      • The bias option is not needed for lower values.
      Click on Advanced and enable Low Latency Mode

      If you use DXVK, you must double your limiter value, otherwise you'll get halved framerate

    ...if you want to enter a custom value, Ctrl-Click on the bar. You can also drag your mouse on it.
  4. Your configuration should look similar to this

RivaTuner Statistics Server

Riva Tuner Statistic Server by Unwinder is probably the most famous FPS Limiter and OSD software, thanks to its compatibility, reliability and ease of use.

Installation

  1. Install and open RTSS, press green Add button and select FalloutNV.exe
  2. Set Application Detection Level to Low
  3. Set Framerate Limit to:
    • No V-Sync

      (RefreshRate)

    • V-Sync

      (RefreshRate - 1)

    • VRR + V-Sync

      (RefreshRate - (RefreshRate * 0.068))

    ...or lower
  4. Enter settings using Setup button and:
    • Enable Passive Waiting
    • Set framerate limiter to Front Edge Sync
  5. Enable Start with Windows or launch RTSS everytime before you play
  6. Your configuration should look similar to this

NVIDIA | AMD driver

The most basic limiters from this list, but definitely the easiest and fastest to set up!

NVIDIA

Configuration

  1. Open NVIDIA Control Panel, go to Program Settings
  2. Select FalloutNV.exe. If it's not present, add it manually
  3. In settings, set Max Frame Rate to:
    • No V-Sync

      (RefreshRate)

    • V-Sync

      (RefreshRate - 1)

    • VRR + V-Sync

      (RefreshRate - (RefreshRate * 0.068))

    ...or lower
  4. Click Apply

Your configuration should look similar to this

AMD

Configuration

  1. Open AMD Software: Adrenaline Edition, go to Gaming tab
  2. Select Fallout New Vegas or search for it in the bar. If not present, click the three dots and add the executable manually.
  3. In games's menu, enable Radeon Chill™️ and set Max FPS to:
    • No V-Sync

      (RefreshRate)

    • V-Sync

      (RefreshRate - 1)

    • VRR + V-Sync

      (RefreshRate - (RefreshRate * 0.068))

    ...or lower

Your configuration should look similar to this

Finish

The End?

Congratulations! You've made it through! I hope this guide helped you making Fallout New Vegas a smoother experience.
If you have any issues, questions, critiques or recommendations hit me up on Discord - Wall_SoGB#2421.
You can also find me on xNVSE and Tale of Two Wastelands servers.

I recommend checking this guide from time to time - I'm not done yet.

Things worth reading

Here are some links to stuff that I recommend checking out:
  • Salamand3r's Texture Guide - nice and easy to follow texture guide by Salamand3r that actually doesn't break your game for a nice change of pace.
  • PCGamingWiki - Great website, contains really helpful info about games, patches, fixes and other PC gaming related stuff.
  • BlurBusters - Amazing website by Mark Rejhon focused on displays, latency and image quality. Really worth checking it out if you are a geek for these things.

Credits

This is the part where I'd like to thank people who have helped me in whatever way making this guide possible.
  • Whole xNVSE server for being a great community. Especially:
    • VishVadeva50 - for testing and helping with benchmarks
    • c6 - for fixing the some engine functions so my testing could be easier
    • LOC (aka ItsMeJesusHChrist) - for making the awesome logo for the guide
    • woomzy - woomzy
    • nice try karut, but you are not getting credited
  • Whole Special K server for also being a superb community with a lot of knowledgeable people. This guide would literally not exist without them.
  • Glaceon575 - for helping with benchmarks and providing screenshots for AMD GPUs
  • You