How to Fix Battlefield 2042 DirectX Error on PC?

Some PC gamers are reporting that Battlefield 2042 crashes with a DirectX error that also leaves lingering performance issues leading the PC to become unstable. Most affected users are reporting that the GPU disappeared briefly once this crash occurs.

How to Fix DirectX Error on Battlefield 2042

After investigating this particular issue thoroughly, we realized that there are several underlying causes that might be responsible for producing this error. Here’s a shortlist of potential causes that are known for causing this DirectX issue with Battlefield 2042:

  • DLSS is Enabled – Supersampling powered by deep learning is an exclusive Nvidia technology that is also used inside BattleField 2042. But as some users have reported, this technology can also be responsible for the DirectX error crash with certain PC configurations. You can test this theory by temporarily disabling DLSS and see if the game ends up crashing with the same kind of error.
  • Outdated GPU drivers – Most of the DirectX-related crashes that we’re around back when the game entered the Beta stage have since been patched by updates released by graphics card manufacturers (Nvidia and AMD). If you haven’t already, ensure that you install the latest available GPU driver.
  • Missing DirectX package – Keep in mind that Battlefield 2042 uses Dynamic Link library files from a lot of different DirectX redist. packages. To make sure the game has every dependency it needs, you’ll need to run the DirectX End-User Web installer and install every missing DirectX package.
  • DirectX 12 is enabled on unsupported GPU – Another reason why you might see this problem occurring is a situation where the game tries to use DirectX 12 on a configuration where this technology is not supporting, resulting in the game crashing with a DirectX error. To fix this problem, you’ll need to manually edit the Settings file of the game to ensure that DirectX12 is actually disabled.
  • Future Frame Rendering-related crash – Although FFR is a great feature that helps improve the framerate if you have a configuration with a powerful GPU and a less powerful CPU, going this route might make the game less stable and force it to crash with a DirectX error. To avoid this problem, you’ll need to disable frame rendering from the in-game settings.
  • MachineGUID points to wrong dependencies – There is one less common scenario where a key DirectX dependency used by the game has recently become inaccessible due to an improper Registry key. If this scenario is applicable, you can fix the problem by making some changes via Registry Editor.

Now that you are aware of every potential culprit that might be responsible for this problem, let’s go over every potential fix that other affected users have successfully used to get to the bottom of the issue.

1. Disable DLSS via GForce Experience (if applicable)

One of the most common reasons why you might expect to face this particular issue on a configuration with an Nvidia GPU is a scenario where DLSS (Deep Learning Super Sampling) is enabled.

Note: DLSS is a video rendering technique that’s exclusive to Nvidia graphics cards. It uses proprietary deep learning technology to boost the FPS without sacrificing to mooch of the visual quality.

Although this Nvidia feature is amazing for the most part, it also tends to make certain games (including Battlefield 2042) a lot less stable and prone to crashes.

If you are using an Nvidia card and DLSS is enabled for BattleField 2042 while you’re encountering the DirectX-related crash, you should start by disabling DLSS and launching the game again to see if the problem is now fixed.

When it comes to doing this, the easiest way is to do this is from Display > Video in the in-game settings.

Follow the instructions below for specific instructions on how to do this:

Note: These instructions will only be applicable as long as you can launch the game normally and play for a bit before getting the DirectX crash. If you see this error at every game startup, move directly to the next method below.

  1. Open the game normally and access the Options menu after you get past the initial screen.
  2. Once you’re inside the Settings menu, access the Display options using the ribbon menu at the top.
  3. Next, select Video from the sub-menu and ensure that DLSS is set to Off before saving the changes.
    Disabling the DLSS functionality from the in-game menu
  4. Once the DLSS functionality has been disabled and the changes saved, restart the game and see if the DirectX error has stopped occurring.

If this method was not applicable or you’re still experiencing this issue even after following the instructions above, move down to the next potential fix below.

2. Update GPU drivers

Keep in mind that a lot of the well-known issues that have caused this type of error back when the game was in Beta have since been addressed by Nvidia and AMD by hotfixes included in the latest cumulative driver update releases.

You can take advantage of them by using the dedicated utility (from AMD or Nvidia) to make sure that you’re using the latest compatible GPU driver and dependencies – using Nvidia Experience or AMD adrenalin.

Depending on which dedicated GPU card you’re using, follow one of the sub-guides below to update your GPU drivers to the latest version available:

Update your Nvidia GPU driver

Before you go ahead and update your current GPU driver for your Nvidia card, you should start by uninstalling every driver and remnant file first. Doing this will force your PC to switch over to generic driver equivalents, making the new installation of the dedicated driver way less prone to being affected by system file corruption.

Follow the instructions below for specific instructions on updating your Nvidia GPU driver:

  1. Open up a Run dialog box by pressing Windows key + R. Next, type ‘appwiz.cpl’ inside the text box and hit Enter to open up the Programs and Features menu.
    Open up the Programs and Features menu

    Note: If you’re prompted by the User Account Control window, click Yes to grant admin access.

  2. Once you’re finally inside the Programs and Features menu, start by clicking on the Publisher button to order every item based on their publisher. This will allow us to spot the entires belonging to Nvidia more easily.
    Ordering programs via Publisher
  3. After every program is ordered accordingly, scroll down and find the entires published by Nvidia Corporation.
  4. Once you manage to find the correct entries, right-click on every Nvidia item and choose Uninstall from the context menu.
    Uninstalling every Nvidia app
  5. Follow the on-screen instructions to uninstall every piece of software published by NVIDIA Corporation from your computer.
  6. Once every NVIDIA item is uninstalled, reboot your computer and wait for the next startup to complete. This will force the generic GPU drivers to kick back into action.
  7. After your PC boots back up, visit the official download page of GeForce Experience.
  8. Click on the Download Now button to download the latest version of GeForce Experience.
    Downloading Nvidia Experience
  9. Follow the on-screen instructions to install the latest version of GeForce Experience on your PC, then press Yes to grant admin access when prompted to do so.
  10. Once GeForce experience has been successfully installed, open it and navigate to the Drivers page to see if a new driver version is waiting to be installed.
  11. If you do have a new version waiting to be installed, click on Express installation, then follow the remaining prompts to complete the installation of the driver.
    Downloading the latest Nvidia driver version
  12. Once the installation of the driver is complete, reboot your PC (you should be prompted to do this automatically) in order to finalize the changes.
  13. After your PC boots back up, launch Battlefield 2042 once again and see if the problem is now fixed.

Update your AMD GPU driver

If you are using an AMD graphics card, we highly recommend that you take the time to use the AMD cleanup utility to remove the current GPU driver along with every associated dependency.

This will ensure that no corruption file ends up interfering with the new installation. After you do this, you can safely download the latest GPU version using the Auto-Detect utility.

Here are the step-by-step instructions that will guide you through the entire process:

  1. First, start by opening this official download page of the AMD Cleanup Utility link to automatically download the latest version.
  2. After the download is complete, right-click on the AMD Cleanup Utility and choose Run as administrator from the context menu that just appeared.
  3. At some point, you will be prompted to grant admin and boot in Safe Mode to make the utility more effective. When this happens, accept the prompt by clicking Yes.
    Deploying the Cleanup Utility

    Note: This tool will first uninstall the current AMD drivers, then deploy a system-wide scan that will look for remnant registry files and startup items that contain the AMD driver store signatures. If it finds any remnant data, it will swiftly remove it without affecting other system components. The entire process is automated so you won’t be required to do anything manual on your part.

  4. When you are prompted that the removal of the driver is about to begin, click Ok to start the process and have it run in the background.
    Confirming the driver removal operation

    Note: Once the AMD Cleanup Utility kicks into action, you can expect the display to start flickering before finally going to black for a few seconds. Don’t freak out when this happens – it’s absolutely normal.

  5. Once the cleanup operation is finally complete, click on Finish to reboot your computer normally and make the transition to the generic drivers.
  6. After your Windows computer boots back up, visit the official AMD page of the Auto-Detect and Install Graphics utility.
  7. Once you are inside the correct page, scroll all the way down to the Auto-Detect and Install Radeon Graphics Drivers for Windows section and click on Download Now.
    Downloading the Auto-Detect utility
  8. After the download is finally complete, go ahead and double-click on the executable that you’ve just downloaded and follow the remaining prompts to install Radeon Adrenalin.

    Installing the AMD Adrenalin software

    Note: You can change the default destination folder if you want, but this is not recommended.

  9. Once the installation is complete, you should see AMD Adrenalin automatically launching itself as it starts scanning for the latest compatible AMD graphic drivers.
  10. Wait patiently until the driver scan is complete.
  11. Once the utility detects the appropriate system configuration and the correct driver that needs to be installed, you will be prompted with the option to install it. Hit Install when the prompt appears.
    Downloading the latest AMD driver

    Note: Our recommendation is to install both the Recommended and the Optional driver.

  12. When prompted by the EULA (End User License Agreement), hit I agree to complete the procedure.
  13. Reboot your PC one final time to complete the operation, then launch Battlefield 2042 once again and see if the DirectX error is now fixed.

If the same kind of issue is still occurring even after you’ve ensured that you’re using the latest GPU drivers, move down to the next potential fix below.

Install every missing DirectX package

Keep in mind that BattleField 2042 draws from a lot of different DirectX redist. releases to achieve the smooth framerate that we’re all used to. But because of this, you’ll need to ensure that you have every public version of DirectX installed on your PC.

Several affected users that we’re also dealing with this particular DirectX-related crash when launching BattleField 2042 have confirmed that the problem stopped occurring once they run the DirectX End-User Runtime Web installer and install every missing DirectX iteration on their computer.

Follow the instructions below for specific steps on deploying the DirectX End-User Runtime Web installer on your PC:

  1. Visit the download page of the DirectX End-User Runtime environment and select the appropriate installer language before clicking on the Download button.
    Downloading the DirectX end-user runtime utility
  2. Once you reach the next screen, uncheck every Microsoft bloatware recommendation and then click on No thanks and continue to DirectX End-User Runtime Web installer button.
  3. Wait until the dxwebsetup.exe installer is downloaded, then follow the on-screen instructions to complete the process of installing every missing DirectX version to the latest.
    Installing the missing DirectX installations
  4. After the operation is complete, reboot your PC and see if the problem is fixed by booting up Battlefield 2042 once again and seeing if the DirectX error is fixed.

If you’re still experiencing the DirectX error when you attempt to launch the game or when you’re actually playing, move down to the next potential fix below.

Edit the game Profile

Another potential reason why you might experience this particular issue when attempting to launch Battlefield 2044 is an instance in which DirectX 12 is actually enabled in your in-game config files even if your PC doesn’t support it.

This type of issue typically occurs on PCs where there was a recent GPU change.

If you’re experiencing this type of issue, chances are you won’t be able to access the in-game settings menu in order to disable the use of DirectX12.

Fortunately, you can bypass this completely by editing the settings config files instead to ensure that DirectX12 remains disabled.

Follow the instructions below for specific instructions on how to do this:

  1. Open File Explorer and open the Documents folder.
  2. Inside the Documents folder, you should find a folder named BattleField 2042. Double-click on it to access it.
    Accessing the Battlefield 2042 Documents folder
  3. Next, double-click on the Settings folder.
  4. Inside the settings folder, right-click on PROFISAVE_profile and choose Open With > Notepad (or any other text editor).
  5. Once you’re inside the contents of the PROFISAVE_profile file, scroll down all the way to the bottom of the screen and you should discover an option named GstRender.Dx12Enabled.
  6. When you discover it, change the associated value from 0 to 1.
    Disable DirectX12 from the Profile file of Battlefield 2042

    Note: This will ensure that DirectX 12 will remain disabled.

  7. Go to File from the ribbon at the top and click on Save, then you can safely close this window.
  8. Launch Battlefield 2042 once again and see if the problem is now fixed.

If this method was not applicable or it didn’t work in your case, move down to the next potential fix below.

Disable Future Frame Rendering (if applicable)

Future Frame Rendering (FFR) is a super useful feature, especially in those situations where you have a powerful GPU and a sub-par CPU. This feature takes a bit of load off your CPU and gives it to the GPU.

However, the problem with future frame rendering is that it ends up making the game (Battlefield 2042) unstable on a lot of different PC configurations. Expect much more frequent crashes, especially if you’re using an AMD GPU.

The solution if this scenario is applicable is to simply disable future frame rendering from the in-game Display menu.

Follow the instructions below to disable future frame rendering from the in-game settings menu of Battlefield 2042:

Note: If you get the DirectX error at every attempted startup, skip this method entirely and move down to the final potential fix below.

  1. Open Battlefield 2042 and access the Options menu after you get past the initial startup screen.
  2. From the Options menu, access the Display settings (using the ribbon bar at the top), then select Video from the sub-menu below.
    Disabling Future Frame Rendering on Battlefield 2042
  3. Once you disable Future Frame Rendering, save the changes then restart the game and see if the crashes have stopped.

If the same kind of issue is still occurring, move down to the final fix below.

Edit the machine GUID registry key

A less frequent reason for the DirectX error with Battlefield is a registry key pointing to the wrong dependency, forcing your PC to crash the game at every attempted startup.

This exact problem is actually also appearing with BattleFields’s biggest rival series (Call of Duty).

Fortunately, several tech-savvy users have discovered that the problem can be swiftly resolved by using the Registry Editor to change the actual path of MachineGUID to the correct dependency. As some affected users that we’re experiencing the same problem have reported, doing this will finally make the game stable enough to get past the initial screen.

Follow the instructions below for specific instructions on deploying this fix:

  1. Press Windows key + R to open up a Run dialog box. Next, type ‘regedit’ and press Ctrl + Shift + Enter to open up the Registry Editor with admin access.
    Opening up the Registry Editor
  2. When you’re prompted by the User Account Control, click Yes to grant admin access.
  3. Once you’re inside the Registry Editor, use the left-hand side menu to navigate to the following location:
    HKEY_Local_Machine\Software\Microsoft\Cryptography\

    Note: You can either get here instantly by pasting the location directly into the nav bar at the top or you can manually double-click each Registry entry.

  4. Once you arrive inside the correct location, move over to the right-hand menu and right-click on machineGUID .
  5. Next, click on Modify from the context menu that just appeared.
    Editing the MachineGUID string
  6. Next, replace the value of the MachineGuid string with the following and click Ok to save the changes:
    d1eb246e-6243-4460-a88e-5d4e52b1ef6b
  7. Restart your PC and see if the problem is now fixed when you launch Battlefield 2042 once again.
ABOUT THE AUTHOR

Kamil Anwar


Kamil is a certified MCITP, CCNA (W), CCNA (S) and a former British Computer Society Member with over 9 years of experience Configuring, Deploying and Managing Switches, Firewalls and Domain Controllers also an old-school still active on FreeNode.