Unity 6.4 で DirectStorage がサポートされた
2026年3月にリリースされた Unity 6.4 の目玉機能のひとつが、Microsoft の DirectStorage API への正式対応です。
DirectStorage は、NVMe SSD の性能を最大限に引き出すために設計されたストレージ API で、従来の Win32 ファイル I/O と比較してアセットの読み込み時間を大幅に短縮できます。
本記事では、DirectStorage の概要と Unity 6.4 での有効化手順、対応するアセットの種類、導入時の注意点を解説します。
DirectStorage とは
DirectStorage は、もともと Xbox Series X|S 向けに開発された高速ストレージ API で、その後 Windows PC 向けにも提供されました。
従来の Win32 ファイル I/O API は HDD 時代に設計されたものであり、最新の NVMe SSD が持つ高速な読み取り性能を十分に活かしきれません。DirectStorage はこの問題を解決するために、ストレージからの読み取りリクエストを効率的にバッチ処理し、CPU のオーバーヘッドを最小限に抑えます。
ゲーム開発においては、ステージの読み込み時間の短縮やオープンワールドのストリーミング速度の向上が期待できます。
Unity 6.4 で DirectStorage を有効化する手順
Unity 6.4 での DirectStorage の有効化は非常にシンプルです。以下の手順で設定を変更するだけで利用できます。
- Unity エディタのメニューから Edit > Project Settings を開く
- Player セクションを選択する
- Other Settings > Configuration セクションを展開する
- Enable DirectStorage のチェックボックスをオンにする
この設定を有効にすると、Unity の内部で AsyncReadManager API が自動的に DirectStorage を使用するようになります。すでに AsyncReadManager を利用してファイル読み込みを行っているプロジェクトであれば、コードの変更は一切必要ありません。
DirectStorage が適用されるアセットの種類
Unity 6.4 の DirectStorage は、以下の種類のアセットデータの読み込み時に適用されます。
-
テクスチャ
高解像度テクスチャの読み込みは、従来の方法と比較して大幅に高速化されます。大量のテクスチャを使用するプロジェクトほど効果が顕著です。 -
メッシュ
3D モデルのメッシュデータも DirectStorage の恩恵を受けます。複雑なジオメトリを持つシーンの読み込みが高速化されます。 -
ECS / DOTS データ
Entity Component System で管理されるデータも DirectStorage 経由で読み込まれます。Unity 6.4 では ECS がコアパッケージとしてエディタに統合されたため、DOTS ベースのプロジェクトでは特に大きな恩恵を受けられます。
Unity の公式発表によると、これらのアセットの読み込み時間が最大で約 40% 短縮されるとされています。
動作要件と注意点
DirectStorage を利用するにはいくつかの要件があります。
-
対応プラットフォーム
Windows スタンドアロンビルドおよび Xbox Series X|S が対象です。モバイルや macOS では利用できません。 -
ストレージの種類
DirectStorage は NVMe SSD で最大の効果を発揮します。SATA SSD や HDD でも動作しますが、パフォーマンス向上の幅は限定的です。 -
フォールバック動作
DirectStorage を有効にしていても、対応していない環境では自動的に従来の Win32 ファイル I/O にフォールバックします。そのため、有効化による互換性の問題は基本的にありません。
まとめ
Unity 6.4 の DirectStorage 対応により、Windows 向けゲームのアセット読み込みパフォーマンスを大幅に改善できるようになりました。有効化は Project Settings のチェックボックスをオンにするだけで、既存のコードを変更する必要はありません。
NVMe SSD を搭載した PC をターゲットにしている場合は、積極的に導入を検討してみてください。特にオープンワールドや大量のテクスチャを使用するプロジェクトでは、ロード時間の短縮による体験の向上が期待できます。
コメント