# 保存

> Understand how Unity saves your scenes, assets, and project settings.

Unity は、保存されたほとんどの情報を [シーンの変更](#SceneChanges) または [プロジェクト全体の変更](#ProjectWideChanges) のいずれかに分類します。

* すべてのシーンの変更とプロジェクト全体の変更を保存するには、**File** > **Save** (または **Save as**) の順に選択します。
* プロジェクト全体の変更を保存し、シーンの変更は保存しない場合は、**File** > **Save Project** の順に選択します。

**ノート**: [Prefab Mode](/engine/6000.0/manual/working-in-unity/working-with-gameobjects/prefabs/editing-in-prefab-mode.md) で編集する場合、**File** > **Save** を選択して保存すると、開いているプレハブの変更のみが保存されます。より広い範囲の変更を保存するには、Prefab Mode を終了してください。

Unity は、エディターでの作業中に一部の情報を自動的に保存します。詳細は、[自動保存](#ImmediateSaving) を参照してください。

## シーンの変更

シーンの変更には、シーン内のゲームオブジェクトの変更が含まれます。 例:

* ゲームオブジェクトの追加、移動、削除
* Inspector ウィンドウでのゲームオブジェクトのパラメーターの変更

## プロジェクト全体の変更

プロジェクト全体の変更は、特定のシーンではなくプロジェクト全体に適用されます。例えば、変更をテストする一時的なシーンを作成する場合、シーンを保存せずにプロジェクトを保存できます。

プロジェクト全体の変更には以下が含まれます。

* **Project Settings**: プロジェクトを保存すると、Unity は Project Settings に加えた変更を `ProjectSettings` フォルダーの以下のファイルに保存します。

  * **Input**: `InputManager.asset`
  * **Tags And Layers**: `TagManager.asset`
  * **Audio**: `AudioManager.asset`
  * **Time**: `TimeManager.asset`
  * **Player**: `ProjectSettings.asset`
  * **Physics**: `DynamicsManager.asset`
  * **Physics 2D**: `Physics2DSettings.asset`
  * **Quality**: `QualitySettings.asset`
  * **Graphics**: `GraphicsSettings.asset`
  * **Network**: `NetworkManager.asset`
  * **Editor**: `EditorUserSettings.asset`

* **Build Profiles**:Unityは、プラットフォームプロファイルとビルドプロファイルへの変更をアセットとして `Library` フォルダーに保存します。詳細は、[ビルドプロファイルの概要](/engine/6000.0/manual/unity-editor/editor-features/build-settings/build-profiles.md) を参照してください。

* **変更されたアセット**:プロジェクト全体の設定の保存中に、Unity は未保存のアセットを保存します。

  **注意**一部のアセットタイプには、Inspector に **Apply** ボタンがあります。**Apply** を選択しない限り、Unity はこれらを保存しません。

* **ダーティアセット**:Unity は **ダーティ** アセットを保存します。ダーティアセットとは、ソフトウェアで変更されたがまだ保存されていないディスク上のファイルです。[カスタムエディター](/engine/6000.0/manual/working-in-unity/uitoolkits/guiscripting-guide/extending-the-editor/editor-custom-editors.md) と [スクリプト](/engine/6000.0/manual/scripting/get-started/creating-scripts.md) を使用して、次のいずれかの方法でアセットをダーティとしてマークできます。

  * [SerializedObject](/engine/6000.0/script-reference/unity-editor/serialized-object.md) クラスを [SerializedProperties](/engine/6000.0/script-reference/unity-editor/serialized-property.md) とともに使用します。
  * [Undo](/engine/6000.0/script-reference/unity-editor/undo.md) クラスを使用して変更を記録します。
  * [SetDirty](/engine/6000.0/script-reference/unity-editor/editor-utility/set-dirty.md) を使用します。

## 自動保存

Unity は以下の変更をディスクに自動的に保存します。

* **新しいアセット**: Unity は新しいアセットを作成すると自動的に保存しますが、その後の変更は保存する必要があります。

* **アセットインポート設定**: ほとんどのアセットで変更を有効にするには、Inspector ウィンドウで **Apply** を選択する必要があります。**Apply** を選択すると、変更が保存されます。

* **ベイクしたデータ**:プロジェクトでベイクに設定されているデータがある場合、Unity はこのデータをベイク完了後に保存します。これには次が含まれます。

  * ベイクしたライティングデータ
  * ベイクしたナビゲーションデータ
  * ベイクしたオクルージョンカリングデータ

* **スクリプト実行順序の変更\*\*\*\*Apply** を選択すると、Unity はすぐにこのデータを各スクリプトの `.meta` ファイルに保存します。
