ゲームを長時間プレイするとVRAM使用量が増え続けてカクつく・落ちる原因|正常なキャッシュとメモリリークの見分け方【2026年版】
本記事にはアフィリエイト広告(Amazon・楽天市場等)のリンクが含まれています。
正常なテクスチャキャッシュの蓄積と、メモリリークの見分け方
出典:Epic Games Developer Documentation「Texture Streaming Overview」・Epic Games Developer Documentation「Virtual Texture Memory Pools」・Unity Documentation「Texture Streaming」・Unity Scripting API「QualitySettings.streamingMipmapsMemoryBudget」・Intel XeSS SDK公式GitHubリリースノート・Intel XeSS公式GitHub Issue #42・Ubisoft公式「Assassin’s Creed Valhalla Title Update 1.0.4」パッチノート・Steamコミュニティ「God of War Technical Help / Support」開発元投稿・Steamコミュニティ「Star Wars Outlaws Player Support」にもとづきます。
ゲームを起動した直後は快適に動いていたのに、同じセッションで長時間プレイを続けていると、タスクマネージャーの「パフォーマンス」タブで確認できる専用GPUメモリの数字がじわじわと増えていき、あるタイミングからフレームレートが落ちてカクつき始めたり、最終的にはゲームが強制終了してしまう。こうした症状に心当たりがある場合、これはゲーム側の不具合であるメモリリークなのか、それとも正常なテクスチャキャッシュが蓄積しているだけなのかを見分けたいはずです。
結論から言うと、VRAM使用量がプレイ時間とともに増えていくこと自体は、多くの場合で異常ではありません。Unreal EngineやUnityといった主要なゲームエンジンのテクスチャストリーミング機構は、割り当てられた予算の範囲でVRAMを積極的に使い切るように設計されています。ただし、正しく実装されたストリーミングシステムは、使用量が設定された上限に近づくと低解像度のミップへ切り替えるなどして使用量を頭打ちにする仕組みを持っています。増え続けるが、いずれ横ばいになるのが正常な挙動で、際限なく単調に伸び続けて頭打ちにならない場合はメモリリークを疑う材料になります。
この記事では、Unreal EngineとUnityの公式ドキュメントが示すテクスチャストリーミングの設計思想をもとに、正常なキャッシュの蓄積とメモリリークを見分ける6つのステップ、過去に実際にゲーム側の修正で解決した事例、現在も報告が続いている事例を整理し、優先順位をつけた対処法まで解説します。なお、ゲームがまったく起動しない、あるいは「Out of video memory」というエラーで強制終了するケースは「Out of video memory」エラーの診断記事、専用GPUメモリの数値自体は上限に達していないのに瞬間的にカクつくケースはVideo Memory Budgetの記事で扱っています。この記事が対象にするのは、プレイを続けるうちに使用量そのものが時間をかけて積み上がっていく現象です。
目次
正常設計テクスチャストリーミングはそもそもVRAMを積極的に使い切るように設計されている
Unreal Engineの公式ドキュメントによると、テクスチャストリーミングシステムは、シーン内で要求されているテクスチャ解像度の合計が、割り当てられたメモリプールのサイズを超えると判断すると、収まるまでミップレベルを1段階ずつ下げてメモリ使用量を予算内へ抑える仕組みになっています。プレイヤーが新しいエリアへ移動して視界に入るテクスチャが増えるほど、VRAM使用量が一時的に増えるのは、この仕組みが正しく働いている証拠です。
仮想テクスチャを使う場合のメモリプールについても、公式ドキュメントは最近使われていないデータから優先的に追い出すLRU(Least Recently Used)キャッシュとして動作すると説明しています。長時間プレイを続けて訪れたエリアが増えるほど、キャッシュされたデータの総量が増えていくこと自体は、この仕組みが意図した挙動です。
Unityの公式ドキュメントも同様の設計を採っています。Quality SettingsのStreaming Mipmaps Memory Budget(既定値512MB)を超えないよう、テクスチャストリーミングシステムが自動的に低解像度のミップへ切り替え、不要になったミップをGPUメモリから取り除くと説明されています。
正しく実装されたストリーミングシステムは、原理的に使用量が上限を超えて際限なく伸び続けるようには設計されていません。視界に入ったエリアのぶんだけキャッシュが積み上がっていく間は正常な現象で、割り当てられた予算に達すればいずれ横ばいになります。プレイ時間とともに使用量が増えること自体は異常のサインではなく、増え続けた末に頭打ちになるかどうかが、正常なキャッシュとメモリリークを分ける最初の判断基準です。
定義メモリリークとは何か
メモリリークとは、確保したメモリ領域がプログラム側で不要になった後も解放されず、使用量が時間の経過とともに一方的に積み上がっていく状態を指す、プログラミング全般で使われる用語です。前の章で説明した正常なテクスチャストリーミングとの違いは、使用量が増えるかどうかではなく、増え続けた末に頭打ちになるか、それとも上限を超えても際限なく伸び続けるかにあります。
ゲームにおけるメモリリークは、シーンを切り替えても解放されるはずのテクスチャやバッファが参照を残したままになっていたり、アップスケーラーやオーバーレイ機能のランタイムが内部的に確保したメモリを解放し忘れたりすることで起こります。原因はゲーム本体のコードに限らず、後述するようにドライバーやアップスケーラーのSDK側で発生した実例もあります。
混同注意シェーダーキャッシュの肥大化とVRAM使用量の増加は別の話
「キャッシュが溜まって重くなる」という言葉から、シェーダーキャッシュの肥大化とタスクマネージャーの専用GPUメモリ増加を同じ現象だと思われがちですが、この2つは保存先がまったく違います。NVIDIAのシェーダーディスクキャッシュはVRAMではなくストレージ上に保存され、既定のドライバー設定では上限が16GBとされています。AMD・Steamのシェーダーキャッシュも同様にディスク上に保存される仕組みです。
つまりシェーダーキャッシュがどれだけ肥大化しても、タスクマネージャーで確認する専用GPUメモリの数値には直接影響しません。NVIDIA・AMD・Steamそれぞれのシェーダーキャッシュの削除手順や注意点はシェーダーキャッシュは削除しても大丈夫かで詳しく解説しているので、ストレージの空き容量が気になる場合はそちらを参照してください。この記事で扱うのは、あくまでVRAM側の使用量がプレイ時間とともに増えていく現象です。
見分け方正常なキャッシュとメモリリークを切り分ける6ステップ
VRAM使用量の増え方だけでは判断が難しい場合、以下の手順で切り分けを進めてください。上から順に試すと、原因の絞り込みが早くなります。
- 同じシーン・エリアを往復してみる。キャッシュ的な増加であれば、既に読み込んだエリアへ戻ったときに使用量がある程度下がるか、少なくとも横ばいになるはずです。往復しても一切下がらず、行くたびに単調に伸び続ける場合はメモリリークを疑う材料になります。
- ゲームプロセスを再起動して使用量がリセットされるか確認する。ゲーム内のリークであれば、タイトル画面へ戻るだけでは直らなくても、プロセスを完全に終了して再起動すれば使用量はリセットされます。プロセスを再起動しても高止まりしたまま戻らない場合、ドライバーやOS側で累積している可能性があります。
- 複数の別タイトルで同様の症状が起きるか確認する。特定の1本だけで起きるなら、そのゲーム固有の不具合の可能性が高くなります。プレイするタイトルを問わず同じように使用量が伸び続けるなら、ドライバーや常駐アプリなど環境側を疑ってください。
- 使用量の増加ペースが一定か、途中から加速するかを見る。一定のペースで積み上がっていく場合は典型的なリークのパターンです。増減が不規則な場合は、瞬間的なVideo Memory Budgetの変動など、別の要因が関係している可能性があります。
- グラフィックスドライバーのバージョンを変えて再現するか確認する。特定のドライバーバージョンでだけ発生するなら、そのバージョン固有の既知の不具合である可能性があります。
- 公式フォーラムやバグトラッカーで同じ症状が報告されていないか検索する。同じタイトルで同様の報告が多数見つかる場合、次の章で紹介するような開発元側の既知の問題である可能性が高くなります。
実例過去にゲーム側の修正で解決した事例
メモリリークは珍しい現象ではなく、大型タイトルやアップスケーラーのSDKでも過去に確認され、実際に修正されています。
現在まだ報告が続いている事例
一方で、現在進行形で報告が続いている事例もあります。
同じゲーム・同じアップスケーラーでも、症状が出る環境と出ない環境があります。上記のタイトルを遊んでいて心当たりがある場合は、次の章の対処法を優先順位の高いものから順に試してください。
判断正常なケースとリークを疑うケースの整理
ここまでの内容を踏まえて、正常なキャッシュ蓄積と考えてよいサインと、メモリリークを疑うべきサインを整理しました。
- 新しいエリアへ移動した直後に使用量が増える
- 同じエリアを往復すると使用量が下がる、または横ばいになる
- 増加ペースが徐々に緩やかになり、ある水準で頭打ちになる
- ゲームを再起動すると使用量が元の水準に戻る
- 同じエリアを往復しても使用量が一切下がらない
- プレイ時間に比例して一定のペースで増え続け、頭打ちにならない
- ゲームプロセスを再起動しても高止まりしたまま戻らない
- 複数の別タイトルでも同様に使用量が伸び続ける(ドライバー・OS側の疑い)
対処優先順位で試す8つの対処法
メモリリークが疑われる場合、以下の順番で対処を試してください。
- こまめな再起動を試す。タイトル画面への往復で使用量が戻らない場合、ゲームプロセス自体を一度完全に終了し、再起動してください。ゲーム内部のリークであれば、この時点で使用量はリセットされます。
- グラフィックスドライバーを更新する、または既知の不具合が疑われるバージョンからロールバックする。手順は「Out of video memory」エラーの診断記事で解説しているドライバーの更新・ロールバック手順と共通です。
- DLSS・FSR・XeSSなどアップスケーラー機能のオン・オフや実装バージョンを切り替えてみる。前の章のXeSS SDKの実例のように、アップスケーラーのランタイム自体がリーク源になっているケースがあります。ゲーム内の設定でアップスケーラーを無効にしても症状が出るか確認してください。
- 公式パッチを確認・適用する。前章のGod of Warやアサシン クリード ヴァルハラのように、開発元が修正パッチを既に配布している場合があります。
- シェーダーキャッシュを再構築する。VRAM使用量の増加とは別要因ですが、キャッシュが破損しているとカクつきの原因になることがあります。手順はシェーダーキャッシュの削除手順を参照してください。
- 録画・配信ソフトやオーバーレイなど、常駐しているアプリを閉じる。GPUメモリを使用する常駐アプリ自体がリークを起こしているケースもあります。
- OS自体を再起動する。ドライバーレベルで累積したリークは、ゲームプロセスの再起動だけでは解消せず、OSの再起動で初めてリセットされることがあります。
- 公式コミュニティやサポートへ症状を報告する。同じ症状の報告が集まるほど、開発元による修正が進みやすくなります。前章のBattlefield 6のように、GitHubのIssueトラッカーやSteamコミュニティが窓口になっているタイトルもあります。
Q&Aよくある質問
総括まとめ、増え続けるかではなく頭打ちになるかで判断する
長時間プレイするうちにVRAM使用量が増えていくこと自体は、多くの場合で異常ではありません。Unreal EngineやUnityのテクスチャストリーミング機構は、割り当てられた予算の範囲でVRAMを積極的に使い切るように設計されており、視界に入ったエリアのぶんだけキャッシュが積み上がっていくのは正常な挙動です。
見分けるポイントは、増え続けた末に頭打ちになるかどうかです。同じエリアを往復しても使用量が一切下がらない、プレイ時間に比例して一定のペースで増え続けて頭打ちにならない、ゲームを再起動しても高止まりしたまま戻らないといった特徴が重なる場合は、メモリリークを疑ってください。過去にはIntel XeSSのSDK、God of War、アサシン クリード ヴァルハラのように、開発元側の修正で実際に解決した事例もあります。
リークが疑われる場合は、再起動、ドライバーの更新やロールバック、アップスケーラーの切り替え、公式パッチの適用という順番で対処してください。それでも改善しない場合は、公式コミュニティやサポートへ症状を報告することが、次のパッチでの修正につながる近道になります。




