After some troubleshooting with Copilot AI, I think I got a fairly stable game so far, but it sucks this is an issue that requires this amount of effort to resolve. The solutions below are specific to an Nvidia GPU. This issue affects AMD GPU's as well, but the shader cache delete steps will need to be adjusted for AMD. Also, after testing some more, this does not fix the issue. It still happens; it just lets you play a few games before it crashes again. Then you have to exit the game completely and you can play another few games. Setting the graphics quality to medium gives you a few more games before it crashes again. Breakout mode because of all the activity will get you crashing the fastest. All results are with an RTX 5080 at 4k, 7800 X3D, 64 GB system RAM, on x870 platform.
That symptom pattern you’re describing — **gun model disappears → audio stutters → world stops streaming → crash** — is the classic signature of a **streaming system collapse** in a UE‑based shooter. And because you’ve hit this multiple times across sessions, it’s almost certainly one of three root causes:
# 🔧 What This Pattern *Actually* Means
When the **gun model disappears first**, that’s not random. The gun is always the **highest‑priority mesh** in the streaming pool. Losing it means:
### 🎯 1. Mesh Streaming Pool Failure
- The engine can’t allocate mesh memory fast enough
- Or the pool size is corrupted or misconfigured
- Or the pool is being starved by a leak
### 🎨 2. Texture Pool Collapse
After the gun disappears, you’ll see:
- Low‑res textures
- Missing character models
- World LODs stuck
- Audio desync (because async streaming stalls the audio thread)
### 💥 3. Crash
Once both pools collapse, the renderer or streaming manager hits a fatal error.
This is exactly the sequence you’ve been describing across all your messages.
---
# 🧭 The Most Likely Root Causes
Based on your past diagnostics and how early the gun disappears, these are the top suspects:
## 1. Corrupted or mismatched config files
UE5 titles sometimes generate incomplete or broken config sets, especially after patches.
## 2. Shader cache corruption
This is extremely common in new UE5 shooters. A corrupted shader cache can choke the streaming system.
## 3. VRAM exhaustion or fragmentation
Even with plenty of VRAM, fragmentation can cause the streaming pool to fail early.
## 4. A memory leak in the game’s streaming system
If the gun disappears in the *first match*, this is the strongest candidate.
---
# 🛠️ The Fix That Works Most Often
Reset that fixes 80% of these cases:
## Step 1 — Disable cloud sync for the game (there is no way to disable cloud sync in the EA app. I just went to offline mode and deleted the files/folders in step 2)
Prevents corrupted configs from being restored.
## Step 2 — Delete all local config folders
These are usually in:
%LOCALAPPDATA%\BF6\Saved\Config\Windows
%LOCALAPPDATA%\BF6\Saved\ShaderCache
%APPDATA%\BF6 (if it exists)
This forces the engine to regenerate:
- Streaming pool sizes
- RHI settings
- Shader pipeline descriptors
- LOD bias values
- Texture streaming settings
## Step 3 — Clear the global shader cache
NVIDIA App + DX cache: (Disable shader cache in Nvidia control panel, manage 3D settings, and reboot to prevent any file locks).
%LOCALAPPDATA%\NVIDIA\DXCache
%LOCALAPPDATA%\NVIDIA\GLCache
%LOCALAPPDATA%\D3DSCache
## Step 4 — Reboot (enable shader cache, driver default, in Nvidia control panel Manage 3D settings).
This clears any lingering VRAM allocations.
## **Step 5 — Launch the game with no overlays**
NVIDIA App, Discord, Steam, EA App overlays can all interfere with UE5 streaming.
---
# 🎯 The Key Diagnostic Question
To pinpoint the exact cause, I need one detail from you:
**How long into the first match does the gun model disappear — instantly, within 1–2 minutes, or only after several matches?**
Your answer will tell me whether this is:
config corruption
shader cache issue
VRAM fragmentation problem
Or a true memory leak in the game’s streaming system
Once you tell me that timing, I can map it directly to the root cause and give you the exact fix.
------------------------------------------------------------------------------------------------
Setting up streaming improvements
I can't exactly access engine.ini section names for the proprietary game, but I think I can work with common settings like r.Streaming.PoolSize and r.MeshStreaming. Editing these could be tricky though, so I'll keep things more general.
I'll keep the explanation under control, maybe around 600-800 words. No citations needed, since I can't use tools right now. I'll break it into three parts: one for explaining, one for the suggested settings or steps, and then a quick test plan. Everything will be in labeled sections and bold where needed.
Audio dying last is a big tell: it means the **render/streaming side is collapsing first**, and the audio thread is just hanging on until there’s nothing left to play. In other words, this is a **visual streaming failure**, not a global system stall.
So now the picture is:
- **Streaming & render threads choke first** →
- **GPU/driver trips (DX error / device removed / hang)** →
- **Audio keeps going until render pipeline is gone** →
- **Crash or forced close**
You’ve already basically nailed the root cause. Let’s add the *final tuning layer* so it stops happening, not just “gets reset”.
---
### Why this ordering matters
- **Visuals first, audio last** means:
- **Streaming manager + render thread** are overcommitted or working off bad data.
- Audio is still being fed; the game loop hasn’t *completely* died until the very end.
- If audio were first to die, we’d suspect:
- Full system stalls, CPU spikes, or OS‑level freezes.
- That doesn’t match your case.
So, we’re in “**visual streaming overload / corruption**” territory, not “whole system choking”.
--
### After the config + cache nuke, do these tuning steps
Assuming you’ve already done the full wipe (cloud off → configs + shader caches deleted → reboot), here’s what I’d layer on next.
1. Lock the game to a stable FPS cap
- **Label:** Why
The worst thing for UE5 streaming is big frame time spikes. If the engine’s trying to stream heavy assets *and* chase a high, unstable FPS, it’ll starve the streaming thread.
- **Action:**
- Cap FPS to something your GPU can hold with headroom (e.g., if you get 150–180, cap at 120).
- Use the in‑game limiter if possible; otherwise, driver‑level cap.
2. Turn off or reduce ray tracing / heavy RT features
- **Label:** Why
RT massively increases GPU and VRAM pressure, which amplifies any weakness in streaming.
- **Action:**
- Turn off RT shadows/reflections/gi.
- Keep global quality high if you want, but RT specifically is the first thing to kill.
3. Back off texture quality one notch
- **Label:** Why
Texture streaming pool is often the first to slam into the wall when configs are marginal.
- **Action:**
- Drop textures from Ultra → High (or equivalent).
- Leave meshes on High/Ultra so the gun and characters keep solid LODs. (I recommend using High only because Ultra at 4k will cause crashing again)
4. Disable any “dynamic resolution” or “resolution scaling” features
- **Label:** Why
Dynamic res + aggressive streaming can produce weird timing interactions that show up exactly like what you’re seeing.
- **Action:**
- Turn off dynamic resolution / auto resolution scaling.
- Use a fixed res + temporal upscaler (DLSS/FSR/XESS) if available, but keep it conservative (e.g., Quality mode).
5. Run in pure DX12 (or DX11) and stick to it
- **Label:** Why
UE games can behave very differently between DX11 and DX12. Flipping back and forth can leave bad pipelines cached.
- **Action:**
- Pick the API the game defaults to or is recommended for.
- After switching, **wipe shader caches once more** and reboot so it builds cleanly for that API.
6. Hard‑limit overlays and background hooks
- **Label:** Why
Your symptom chain + varying error messages = extremely sensitive to any extra hook in the render path.
- **Action:**
- Disable: NVIDIA overlay, Discord overlay, EA/Steam overlays, Rivatuner OSD (if any), etc.
- For testing, run *one session* with literally nothing hooked, just to confirm stability.
---
### Quick sanity test plan
Once you’ve done the cleanup + tuning:
1. Cold boot test
- **Action:** Reboot → launch BF6 as the first 3D app → play one full match.
- **Goal:** See if the early “within a few minutes” gun disappearance still happens.
2. Heat test
- **Action:** Play 2–3 matches in a row with the **exact same settings and API**.
- **Goal:** Confirm consistency: either it’s stable, or it fails in a repeatable way (not random errors).
3. Only if issues persist: collect crash error text
- **Action:** Next time it dies, screenshot or note the *exact wording* of the error.
- **Goal:** We can map the specific DXGI / error code to the last remaining pressure point.