Unityプロジェクトを開くと、フォルダの中に 「お前らどっちが親でどっちが子なんだ…?」 というわけで今回は、「なぜこの2つの設定フォルダが分かれているのか」を解説します。 まず Edit > Project Settings からアクセスできる、いわば「プロジェクト全体の総本山」。 次に 自作のScriptableObject設定とか、Input Systemのアクションファイルとか。 ここが今回の本題! まとめると… という住み分けがされています。
🧠「設定」って名前多すぎない?問題
ProjectSettings
とSettings
という、
どっちも“設定っぽい名前”のやつがいて困惑した経験、ないですか?
意外と知られてないけど、役割も管理方針もまったく違うんですよコレ。
🏢
ProjectSettings
は社長。Unity全体を牛耳ってるProjectSettings
。この子はUnityのエディタでおなじみ、何が入ってるの?
特徴
.asset
ファイルで構成されてるけど、Gitで差分見ても結構カオス
🧰
Settings
フォルダは現場のリーダーたちSettings
フォルダ。これはプロジェクトの中にあるカスタム設定たちの集まりです。具体例
InputSystem.inputactions
:新しい入力システムの設定MyRenderPipelineAsset.asset
:URPとかのカスタムレンダリング設定PostProcessProfile.asset
:ポストエフェクト用の設定SceneA_Profile.asset
:シーンごとの専用設定特徴
🧠 なんで分ける必要があるの?
✅ スコープ(影響範囲)が違う
ProjectSettings
→ プロジェクト全体に影響Settings
→ 個別シーンやシステムに限定✅ 柔軟性が違う
Settings
はチームやプラットフォームごとに好きに作って運用OKProjectSettings
はUnityの仕様に従う必要アリ✅ Gitでの扱いやすさが違う
ProjectSettings
は変更差分が多く、意図せずコンフリクトしがちSettings
は変更した人が明確で、バージョン管理と相性◎✅ 再利用性も違う
Settings
の中身は、コピペで他プロジェクトに持っていけるProjectSettings
はプロジェクト全体との整合性が必要なので微妙
✅ 結論:住み分けは大事!
ProjectSettings
= プロジェクト全体を管理するUnityの中枢機関
Settings
= 特定機能・目的のための現場設定
Git管理やチーム開発をするうえでも、この構造を理解しておくとストレス減りますよ!