Version: 2022.1
言語: 日本語
シーン
Unity で複数のシーンを使用する

シーンの作成、ロード、保存

このページでは、シーンの 作成ロード保存 の方法について説明します。

新しいシェーダーの作成

新しいシーンを作るにはいくつかの方法があります。

  • New Scene ダイアログ を使用して、特定のシーンテンプレートから新しいシーンを作成します。
  • メニュー または Project ウィンドウ を使って、New Scene ダイアログを開かずに、プロジェクトの Basic シーンテンプレートから新しいシーンを作成することができます。
  • C# スクリプト を使って、特定のテンプレートからシーンを直接作成します。

Unity は、すべての新しいシーンをシーンテンプレートから作成します。シーンテンプレートの作成と管理については、シーンテンプレート を参照してください。

New Scene ダイアログから新しいシーンを作成

New Scene ダイアログを使って、プロジェクト内の特定のシーンテンプレートから新しいシーンを作成します。また、New Scene ダイアログを使って、シーンテンプレートの検索や管理を行うこともできます。詳細は、New Scene ダイアログ を参照してください。

デフォルトでは、メニュー (File > New Scene) またはショートカット (Ctrl/Cmd + n) で新規シーンを作成すると、New Scene ダイアログが開きます。

新しいシーンの作成は、以下のように行います。

  1. リストからテンプレートを選択します。
  2. Unity に新しいシーンを追加でロードしたい場合 (以下の注意を参照)、Load Additively を有効にします。
  3. Create をクリックすると、テンプレートから新しいシーンが作成されます。
ノート:
追加ロードとは、開いている他のシーンに加えて、シーンをロードすることを意味します。詳しくは、マルチシーン編集 を参照してください。

テンプレートが クローン可能な依存関係 を持たない場合、Unity は新しいシーンをメモリに読み込みますが、保存はしません。

テンプレートに クローン可能な依存関係がある場合、Unity は Project 内の場所を保存先として選択するように指示します。シーンを保存すると、同じ場所に新しいシーンと同じ名前のフォルダーを作成します。その後、クローン可能な依存関係のクローンを新しいフォルダーに作成し、テンプレートシーンで使用されている元のアセットの代わりに、クローンアセットを使用するように新しいシーンを更新します。

メニューから新しいシーンを作成

メニュー (Assets > Create > Scene) を使うと、New Scene ダイアログを開かずに新しいシーンを作ることができます。

メニューから新しいシーンを作成すると、Unity は自動的にプロジェクトの Basic テンプレートをコピーし、Project ウィンドウで現在開いているフォルダーに新しいシーンを加えます。

Project ウィンドウから新しいシーンを作成

Project ウィンドウのコンテキストメニューを使うと、New Scene ダイアログを開かずに新しいシーンを作ることができます。

  1. 新しいシーンを作成するフォルダーに移動します。
  2. 左側のペインのフォルダーを右クリックするか、右側のペインの空白エリアを右クリックして、コンテキストメニューから Create > Scene を選択します。

メニューから新しいシーンを作成すると、Unity は自動的にプロジェクトの Basic テンプレートをコピーし、選択したフォルダーに新しいシーンを加えます。

C#スクリプトから新しいシーンを作成

C# スクリプトから特定のシーンテンプレートを使用して新しいシーンを作成するには、** Instantiate** メソッド を使います。

Tuple<Scene, SceneAsset> SceneTemplate.Instantiate(SceneTemplateAsset sceneTemplate, bool loadAdditively, string newSceneOutputPath = null); 

Instantiate メソッドは、シーンテンプレートから新しいシーンをインスタンス化します。このメソッドは、新しく作成された Scene ハンドルと、それに一致する SceneAsset を返します。このシーンは、追加的に作成することができます。シーンに アセットが含まれていて、それをクローン化する必要がある場合、シーンをディスクに保存するためのパスを指定する必要があります。

新しいシーンのイベント

スクリプト、または New Scene ダイアログを使ってテンプレートから新しいシーンを作成すると、Unityは イベント を発生させます。Unity は、テンプレートがインスタンス化され、かつ、EditorSceneManager.newSceneCreatedEditorSceneManager.sceneOpened イベントも発生させた後に、このイベントを発生させます。


public class SceneTemplate
{
    public delegate void NewTemplateInstantiated(SceneTemplateAsset sceneTemplateAsset, Scene scene, SceneAsset sceneAsset, bool additiveLoad);

    public static event NewTemplateInstantiated newSceneTemplateInstantiated;
}

シーンのロード

シーンを開くには、以下のいずれかの操作を行います。

  • Project ウィンドウで、シーンアセットをダブルクリックします。
  • メニューから File > New Scene を選択します。
  • メニューから、File > Recent Scenes > [NAME-OF-SCENE] を選択します。

現在のシーンに保存していない変更が含まれている場合、Unity はシーンを保存するか、変更を破棄するかを尋ねてきます。

複数のシーンを一度に開く

複数のシーンを同時に開いて編集することができます。詳しくは、複数シーンの編集 を参照してください。

シーンの保存

現在作業中のシーンを保存するには、メニューから File > Save Scene を選択するか、Ctrl + S (Windows) または Cmd + S (macOS) を押します。

Project ウインドウに表示された保存されたシーンアセット
Project ウインドウに表示された保存されたシーンアセット
シーン
Unity で複数のシーンを使用する