SSD購入のきっかけ
Unreal Engineでゲーム開発に夢中になっていたある日、
Cドライブにエンジン本体、Dドライブにプロジェクトデータを分けて作業していた私。
しかし、ある時から開発中のプロジェクトがとにかく重い。
レベルの読み込みに時間がかかるわ、コンパイルはなかなか終わらないわで、作業効率がガタ落ち…。
「もしかして、HDDのDドライブが足を引っ張ってる…?」
そんな疑念が頭をよぎりました。
調べてみると、Unreal EngineはSSDでの運用を強く推奨しているとのこと。
プロジェクトデータの読み書き速度がパフォーマンスに直結するんですね。
「これはSSDを買うしかない!」
そう決意した私は、早速ポチッと購入ボタンを押したのでした。
結果、プロジェクトの読み込みも早くなり、
あの時のモッサリ感が嘘のように快適な開発環境を手に入れることができました。
もし、あなたもUnreal Engineで作業していて、
似たようなモッサリ感を感じているなら、SSDへの換装を検討してみてはいかがでしょうか?
きっと、その効果に驚くはずです!
PCカスタムのド素人でもできたSSDの増設
「メモリの増設できたんだからSSDも余裕ヤロー!」
といった軽い気持ちでSSDを購入しました。
PCの中を開いて確認すると、どうやら2.5型SSDというのがわかりました。
「よくわからんけど2.5型SSDなら入るんだろう!」という気持ちで以下のSSDを購入しました。
SATAケーブル?と電源ケーブル?を挿したら認識されました!
簡単すぎる!!!
早速、Unreal Engineに向けたSSDの最適化をしよう!
参考にした記事は以下!
Setting up an Unreal Engine Studio the Epic Way|Unreal Engine
公式が出してくれているバージョン管理、ブランチ戦略、バイナリ配信、仮想アセット、共有/クラウド DDC、UGS などの
技術的な制作ワークフローについて、Unreal Engine スタジオのセットアップに関するベストプラクティスです。
この中にある「Workspace Practicalities」を見ると、以下のように書かれています。
Max file paths, choose a very shallow folder for your workspace.
Choose a fast SSD for your workspace.
Turn off NTFS “last accessed” for your workspace.
Exclude your workspace from antivirus, or use MS Dev Drive for asynchronous scanning.
Setting up an Unreal Engine Studio the Epic Way|Unreal Engine
- ファイルパスを最大にし、ワークスペースには非常に浅いフォルダを選びましょう。
- ワークスペースに高速SSDを選択しましょう。
- ワークスペースのNTFS “last accessed “をオフにしましょう。
- ワークスペースをアンチウイルスから除外するか、MS Dev Driveを使用して非同期スキャンを行いましょう。
と、あります。一つ一つ掘り下げてみましょう。
その前に… 設定変更は”自己責任”でお願いします。
この記事で紹介する設定変更は、
Unreal Engineのパフォーマンス向上に役立つ可能性がありますが、
ご自身の環境によっては予期せぬ問題が発生する可能性もございます。
設定変更は、ご自身の責任において行ってください。
設定変更によって発生したいかなる問題についても、
当ブログは一切の責任を負いかねます。
1.ファイルパスを最大にし、ワークスペースには非常に浅いフォルダを選びましょう。
ファイルパスを最大にする
ファイルパスとは、ファイルの保存場所を示す住所のようなものです。
これを最大にするとは、ファイル名やフォルダ名を長くしたり、
フォルダを深くネストさせたりすることを意味します。
これにより、ファイルの整理や検索が容易になります。
ワークスペースには非常に浅いフォルダを選ぶ
ワークスペースとは、作業中のファイルやフォルダを置く場所のことです。
ここには、浅い階層のフォルダを選ぶことを推奨しています。
つまり、フォルダの中にフォルダをたくさん作るのではなく、
少ない階層でファイルを整理することを意味します。
これにより、ファイルのアクセスが速くなり、管理も容易になります。
2.ワークスペースに高速SSDを選択しましょう。
Unreal Engineの公式ドキュメントでも、SSDの使用が推奨されています。
特に、大規模なプロジェクトや高解像度のアセットを扱う場合は、SSDの恩恵がより顕著になります。
プロジェクトの読み込み速度の向上
Unreal Engineのプロジェクトは、多くのアセットやレベルデータを含んでいます。
SSDはHDDに比べて読み込み速度が圧倒的に速いため、プロジェクトの起動やレベルのロードが大幅に短縮されます。
これにより、開発作業の効率が向上し、ストレスも軽減されます。
コンパイル時間の短縮
Unreal Engineでは、C++コードの変更やブループリントのコンパイルが頻繁に行われます。
SSDはHDDに比べて書き込み速度も速いため、
コンパイル時間が短縮され、開発のイテレーションサイクルがスムーズになります。
スムーズなエディタ操作
Unreal Engineのエディタでは、アセットのプレビューやレベル編集など、
リアルタイムでの処理が頻繁に行われます。
SSDの高速な読み込み・書き込み速度は、
これらの処理をスムーズにし、エディタ操作の快適性を向上させます。
3.ワークスペースのNTFS “last accessed “をオフにしましょう。
無効にするには?
NTFSの「最終アクセス」タイムスタンプの更新を無効にするには、以下の手順で行います。
1. 管理者権限でコマンドプロンプトを開く
スタートメニューで「cmd」と検索し、出てきた「コマンドプロンプト」を右クリックして「管理者として実行」を選択します。
2. コマンドを実行する
以下のコマンドをコピーして、コマンドプロンプトに貼り付けて実行します。
fsutil behavior set disablelastaccessupdate 1
コードは注意してご使用ください。
このコマンドは、NTFSボリューム上のすべてのファイルとディレクトリに対して、
最終アクセス時刻の更新を無効にします。
3. コンピュータを再起動する
変更を有効にするには、コンピュータを再起動する必要があります。
なんで無効にするの?
- パフォーマンスの向上:
- 最終アクセス時刻の更新は、ディスクへの書き込み操作を伴います。
特に、多数のファイルにアクセスするような状況では、
この書き込み操作がパフォーマンスのボトルネックになることがあります。 - 無効化することで、不要なディスク書き込みが減り、
システム全体のパフォーマンスが向上する可能性があります。
SSDの場合、書き込み寿命の延長にも繋がります。
- 最終アクセス時刻の更新は、ディスクへの書き込み操作を伴います。
- プライバシーの保護:
- 最終アクセス時刻は、
どのファイルがいつアクセスされたかを記録する情報です。 - 無効化することで、この情報が記録されなくなり、
プライバシー保護の観点からメリットがあります。
- 最終アクセス時刻は、
特にUnreal Engineでの開発においては…
Unreal Engineのプロジェクトでは、
多数のアセットファイルやソースコードファイルにアクセスするため、
最終アクセス時刻の更新によるパフォーマンスへの影響が大きくなる可能性があります。
また、プロジェクトファイルのアクセス履歴が残ることを懸念する開発者もいるかもしれません。
そのため、Unreal Engineのドキュメントでも、
ワークスペースのNTFSパーティションで最終アクセス時刻の更新を無効にすることを推奨しています。
注意点
最終アクセス時刻の情報を利用するソフトウェア(バックアップソフトなど)を
使用している場合は、無効化によってそれらのソフトウェアが正常に動作しなくなる可能性があります。
総合的に判断しましょう!
最終アクセス時刻の更新を無効にするかどうかは、
上記メリットとデメリット、そしてご自身の環境や用途を考慮して総合的に判断する必要があります。
4.MS Dev Driveを使用する
Dev Driveとは?
Dev Driveは、Windows 11で導入された、
開発者向けの新しいストレージボリュームの種類です。
ReFSファイルシステムを使用し、パフォーマンスとセキュリティを最適化しています。
Unreal EngineでのDev Driveのメリット
- コンパイル時間の短縮
Dev Driveは、ファイルシステムレベルで最適化されており、
Unreal Engineのコンパイル時間を大幅に短縮できます。
特に、大規模なC++プロジェクトでは、この効果は顕著です。 - イテレーション時間の短縮
コンパイル時間の短縮に加えて、
アセットのロードやシェーダーのコンパイルなども高速化されます。
これにより、開発のイテレーションサイクルが短縮され、生産性が向上します。 - セキュリティの向上
Dev Driveは、ReFSファイルシステムのセキュリティ機能を活用しており、
ウイルスやランサムウェアからの保護を強化しています。
開発中の重要なデータを安全に保管できます。
Dev Drive化するメリット
- パフォーマンスの向上
上記のように、Unreal Engineの開発においてパフォーマンスが向上します。 - セキュリティの強化
開発中の重要なデータを保護できます。 - ストレージスペースの節約
ReFSファイルシステムは、圧縮機能を備えており、ストレージスペースを節約できます。
注意点
- Dev Driveは、Windows 11でのみ利用可能です。
- Dev Driveを作成するには、SSDが必要です。
- Dev Driveは、ReFSファイルシステムを使用するため、
一部のアプリケーションやツールが対応していない可能性があります。
参考資料
- Windows 11 で Dev Drive を設定する | Microsoft Learn
https://learn.microsoft.com/ja-jp/windows/dev-drive/ - 開発者向けに性能が高い、Windowsの「開発ドライブ」を試す (1/2) – ASCII.jp
https://ascii.jp/elem/000/004/167/4167195/ - Windows 11で「Dev Drive」が利用可能
どんなデータに適しているのか:新たなファイルシステム「ReFS」とは – ITmedia https://atmarkit.itmedia.co.jp/ait/articles/2310/18/news039.html
まとめ
これらの設定は、
Unreal Engineのパフォーマンスを最適化するための重要な要素です。
特に、大規模なプロジェクトや高性能が求められるプロジェクトでは、
これらの設定を行うことで、開発効率を大幅に向上させることができます。
快適な開発環境を構築し、よりクリエイティブな作業に集中するためにも、
ぜひこれらの設定を試してみてください。
コメント