シーンとシーンノード

このページは自動翻訳されており、誤りが含まれる場合があります。誤りを見つけた場合は「このページを編集」リンクからご協力ください。

シーン

シーンは、ゲーム内の何かを表現するノードのツリーです。レベル、メニュー、キャラクター、UI 画面などがあります。ゲーム内で表示されるすべてのものはシーンの中に存在します。

シーンはプロジェクトの assets/ フォルダー内に .prefab ファイルとして保存されます。フォーマットはバージョン管理用に設計された人間が読める JSON です:

assets/
  scene-01.prefab       ← 1 つのシーン
  player-scene.prefab   ← 別のシーン
  enemies/
    grunt.prefab
    boss.prefab

ブートシーンはゲーム起動時に最初に読み込まれるシーンです。プロジェクト設定で設定します。

ノード(ゲームオブジェクト)

ノードゲームオブジェクトとも呼ばれます)はシーン内の単一の要素です。ノードはツリー状に編成されます。各ノードは 1 つの親と任意の数の子を持ちます。この親子階層は基本です。親を変換(位置、回転、スケール)すると、子も自動的に変換されます。

シーンルート
├── カメラ
│   └── 方向光(カメラの子——カメラに追従)
├── 地面
│   ├── 木(地面の子——地面とともに移動)
│   └── 岩
└── プレイヤー
    └── 武器

すべてのノードには Transform コンポーネント(3D 空間での位置、回転、スケール)があります。Transform のみの空のノードでも有用です。マウントポイント、スポーン位置、またはグループ化の親として機能します。

エディターでのノード操作

シーンヒエラルキーパネルでは、次のことができます:

  • ノードを選択して、そのコンポーネントを検査および編集します。
  • シーン → 空のオブジェクトを追加から新しい空ノードを作成します。
  • ヒエラルキー内でノードを別のノードにドラッグして親を変更します。
  • 上下にドラッグして兄弟ノードを並べ替えます。
  • 右クリックのコンテキストメニューから複製または削除します。

選択したノードにコンポーネントを追加するには、インスペクターコンポーネントを追加 ▾ ボタンを使用します。

ディスク上のシーンファイル

.prefab ファイルはノードツリー全体を構造化 JSON として保存します。人間が読め、差分確認に適しています:

{
    "name": "MyScene",
    "nodes": [
        {
            "name": "Camera",
            "transform": { "position": { "x": 0, "y": 5, "z": 10 } },
            "components": [ /* ... component data ... */ ]
        },
        {
            "name": "Ground",
            "transform": { "scale": { "x": 10, "y": 1, "z": 10 } },
            "children": [
                { "name": "Tree", "transform": { "position": { "x": 2, "y": 0, "z": -3 } } }
            ]
        }
    ]
}

.prefab シーンファイルを手動で編集する必要はほとんどありません。エディターが処理します。しかし、このフォーマットにより、Git での変更の確認、マージ競合の解決、または一括編集スクリプトが容易になります。


← すべてのドキュメント このページを編集