# WindowsのSteamとグラフィックスのシェーダーキャッシュは削除できるか

ゲームやドライバーの更新が増えると、ドライブにダウンロードキャッシュとシェーダーキャッシュが残り得ます。ゲームのインストール、セーブ、Workshopの内容、キャッシュは違う種類のデータです。どの容量を戻すかを決める前に、そのディレクトリが何を保存しているかを確定します。

## ダウンロードキャッシュとシェーダーキャッシュは別

Steamのダウンロードキャッシュは、インストールと更新を支えます。ダウンロードの問題は、クライアントの設定にある[Steamの公式手順](https://help.steampowered.com/en/faqs/view/6AD7-820D-8BE5-E51F)に従います。確認は、もう一度サインインが必要だと説明しています。これはアンインストールのコントロールでも、ライブラリ全体を削除する許可でもありません。

シェーダーキャッシュは、準備済みのグラフィックス作業を残します。外すと、次の起動やシーンでダウンロードまたはコンパイルが再び必要になり、待ちが長くなることがあります。戻ったストレージは、フレームレートが上がったことにはなりません。

## シェーダーキャッシュはコンパイルの繰り返しを避ける

照明、マテリアル、エフェクトは、GPUが実行するグラフィックスプログラムを使います。同じシェーダーのソースでも、ハードウェア、ドライバー、グラフィックスAPIが違えば、コンパイル結果は違い得ます。その結果をディスクに残すと、あとから再利用できます。解像度を下げたゲーム素材でも、セーブの進行でもありません。

[NVIDIAの設定のリファレンス](https://www.nvidia.com/content/Control-Panel-Help/vLatest/en-gb/mergedProjects/nv3dENG/Manage_3D_Settings_%28reference%29.htm)は、ドライバーのシェーダーキャッシュとコンパイル作業を説明しています。ドライバー更新は再生成を必要とし得ます。Steamが管理するキャッシュとドライバーが管理するキャッシュは別の場所です。一方を空にしても、もう一方が空いたことや、すべてのゲームが影響を受けることにはなりません。

## 同じシーンを初回と次の読み込みで比べる

ゲームが普通に動くなら、大きなキャッシュを外すことは、ディスク容量と、次の起動や新しいシーンでの再コンパイルの可能性を交換します。その作業の繰り返しは、一般的なフレームレートの最適化ではありません。ベンダーがキャッシュに関する故障を特定しているときは、そのゲームの再構築手順に従います。空にする理由が違います。

ゲーム、セーブ、グラフィックス設定は固定します。削除の前、そのあとの最初の読み込み、ゲームを離れて開き直したあとに、シーンを観察します。1回のかくつきは壊れたキャッシュの証明にならず、初回の遅延に普遍的な回復時間はありません。何を作り直すかは、ゲーム、ドライバー、シーンが決めます。

<figure class="blog-diagram">
  <picture>
    <source media="(max-width: 900px)" srcset="/img/blog/windows-steam-shader-cache-windows-en-mobile.webp" type="image/webp" width="768" height="1180">
    <img src="/img/blog/windows-steam-shader-cache-windows-en.webp" width="1360" height="454" loading="lazy" alt="キャッシュしたグラフィックス作業は再利用できる">
  </picture>
  <figcaption>キャッシュは準備済みのグラフィックス作業を残します。削除はコンパイルや再取得を必要とし得ますが、それ自体はフレームレートの向上を示しません。</figcaption>
</figure>

## MoleがSteamライブラリを認識する方法

MoleはSteamが登録した場所と一覧されたライブラリを読み、`steamapps\shadercache`配下のゲームごとの内容を確認します。CやDにあるSteamフォルダを推測して削除はしません。認識したライブラリと、一覧に出るパスをそれぞれ確認します。

Steamが動いている間、対応するキャッシュは保留されます。ゲームを終え、進行を保存し、Steamを普通に終了してから、クリーンアップの選択を確認します。認識された範囲の外にある、似た名前のフォルダは、その規則の一部にはなりません。

## ゲームデータはキャッシュではない

| 内容 | 適切な扱い |
| --- | --- |
| Steamのシェーダーキャッシュ | 終了したあと候補を確認し、再構築の時間を受け入れる |
| 失敗したSteamのダウンロード | クライアントの公式のトラブルシューティングから始める |
| インストール済みゲームのディレクトリ | Steamのストレージ、移動、アンインストールの流れを使う |
| ローカルのセーブ、Mod、Workshopの内容 | 入手元とバックアップを確認してから、ゲームとSteamの操作を使う |

そのゲームの同期を確認します。クラウド同期は、同期された削除に耐える独立したバックアップではありません。手で加えたMod、スクリーンショット、構成は、アンインストール一覧にゲームが出るからといって、再生するキャッシュにはなりません。

## グラフィックスキャッシュには自分の範囲がある

Moleは、一部のWindows、ブラウザー、グラフィックスのシェーダーキャッシュを、ドライバーのインストーラーパッケージやゲームとは別に認識します。ドライバー更新のあとにキャッシュが増えるのは普通です。コンパイル中または使用中の内容は残します。グラフィックスベンダーのディレクトリ全体は、キャッシュの分類ではありません。

クリーンアップのあと、同じゲームと同じシーンを、最初の読み込みとあとの実行で比べます。再構築の遅延は、ゲームが壊れた証明ではありません。インストールが容量の大半を占めるなら、ゲームを移動またはアンインストールする前に、[ドライブの実際の中身](/ja/windows/blog/find-large-files-on-windows)を調べます。


Canonical: https://mole.fit/ja/windows/blog/steam-shader-cache-windows
