Godotを始めると、最初のほうで「ノード」と「シーン」という言葉が出てきます。どちらもGodotの重要な要素ですが、初めて触れる人にとっては、つかみにくい概念です。
プログラミング教室で子どもたちとゲーム制作に取り組んでいると、「ノードってそもそも何?」「シーンは画面のこと?」という質問がよく出ます。これは自然な反応です。ノードとシーンは、実際に手を動かしてゲーム制作を進めてみることで少しずつ実感できるものだからです。
ここでは、用語を暗記するのではなく、ゲームをつくるときにどのように役立つのかという視点から、ノードとシーンの考え方を紹介します。
英語の意味からイメージしてみる
node(ノード)は、英語で「結び目」「つながる点」「節点」などを表す言葉です。路線図の駅、ネットワークの接続点、木の枝が分かれる場所のように、何かと何かがつながる一つの点をイメージすると分かりやすいでしょう。
コンピューターでは昔から、次のような木構造のA、B、Cなど、一つひとつの要素をnodeと呼びます。Godotも、まさにこの考え方を採用しています。
A
├─ B
│ ├─ D
│ └─ E
└─ C
ゲームをつくるだけなら、このような木構造の名前や仕組みを最初から詳しく知る必要はありません。実際の教育現場でも、まずはキャラクターを動かしたり、ゲームのルールを考えたりする時間を大切にします。ただ、「なぜノードという名前なの?」「なぜ親子の形にするの?」といった小さな疑問が残ると、次の作業へ進みにくくなることがあります。こうした疑問をその都度解消することで、子どもたちは用語を丸暗記するのではなく、納得しながら制作を続けられます。
Godotのノードも、ゲームの中で役割を持つ一つの要素です。ノードを親子の形でつなぐと、画面に表示するもの、動くもの、音を鳴らすものなどが、役割ごとに整理された構造になります。英語の「つながる点」という意味は、ノードを組み合わせてゲームの仕組みをつくる感覚につながります。
scene(シーン)は、英語で「場面」や「情景」を表す言葉です。映画や演劇の一場面を想像すると、タイトル画面やゲーム画面をシーンと呼ぶ理由はイメージしやすくなります。ただしGodotでは、敵一体やアイテム一つのような小さな仕組みにもシーンを使えます。Godotのシーンは、単に一画面を指す言葉ではなく、ノードをまとめて保存した再利用できる単位だと考えましょう。
「ノード型プログラミング」とGodotのノードは同じ?
ノードという言葉から、ノード型プログラミングを思い浮かべる人もいるかもしれません。ノード型プログラミングは、命令や計算を表す箱状のノードを線でつなぎ、処理やデータの流れを目で見える形にするビジュアルプログラミングの方法です。たとえばUnreal EngineのBlueprintは、ノードを線でつないでゲームの処理を組み立てる仕組みとして知られています。
Nintendo Switchにも、ノード型の考え方でゲームプログラミングを体験できる『ナビつき! つくってわかる はじめてゲームプログラミング』があります。このソフトでは「ノードン」という部品をつなぎ、「スティックを倒したら走る」「ボタンを押したら箱が回る」といったゲームの処理を組み立てます。処理のつながりを画面で確かめられるため、プログラムがどの順番で動くのかを学ぶ入り口として分かりやすい方法です。
Godotの通常のノードは、こうした「線でつないでプログラムの流れを書くノード」とは別のものです。Godotでは、ノードを親子のツリー構造にして、画像、移動、当たり判定、音などの役割を持つ部品として整理します。ゲームの動きそのものは、主にGDScriptなどのテキストプログラミングで書いていきます。
ノードはゲームを構成する部品
ノードは、Godotのゲームを構成する一つひとつの部品です。画像を表示する、音を鳴らす、文字を表示する、ボタンを置く、当たり判定を持たせるといった役割ごとに、さまざまなノードがあります。
たとえば、キャラクターの見た目にはSprite2D、文字にはLabel、ボタンにはButton、当たり判定にはCollisionShape2D、音にはAudioStreamPlayerを使います。キャラクター自体も一つの部品だけでできているわけではなく、見た目、移動、当たり判定、アニメーション、効果音といった複数の役割を持っています。
Godotでは、これらの役割を一つのノードに詰め込むのではなく、親子の形で組み合わせます。たとえば移動の中心になるノードの子としてSprite2DとCollisionShape2Dを置けば、見た目と当たり判定を持つキャラクターになります。最初は名前を全部覚える必要はありません。つくりたい仕組みから必要な部品を探し、役割ごとに分けておくことで、画像や当たり判定を直したいときにも場所を見つけやすくなります。
シーンは部品をまとめた、再利用できるひとまとまり
シーンは、複数のノードを組み合わせて保存した、ゲームの中で使えるひとまとまりです。キャラクター、敵、アイテム、タイトル画面、ゲーム画面などを、それぞれ一つのシーンとして用意できます。
「シーン」という言葉から、映画の一場面やゲームの一画面を想像するかもしれません。もちろんタイトル画面やステージをシーンにできますが、それだけではありません。敵一体やコイン一枚のような小さな仕組みも、一つのシーンとしてまとめられます。
たとえば敵のシーンを一つつくっておけば、その敵を必要な数だけインスタンス化してゲーム画面へ出現させられます。敵の動きや当たり判定を直したいときは、元の敵シーンを直せばよいため、同じ敵が何体いても管理しやすくなります。
ノードとシーンの関係を、キャラクターで考える
ノードとシーンの関係は、キャラクターを例にすると考えやすくなります。キャラクターをつくるために、見た目を表示するSprite2D、当たり判定の形を持つCollisionShape2D、移動の中心になるノードなどを組み合わせます。この一式を「プレイヤー」というシーンとして保存します。
ゲーム画面のシーンでは、そのプレイヤーのシーンを置き、敵のシーンやアイテムのシーンも置きます。さらに、得点を表示するLabelや、背景を表示するノードを加えることで、一つのゲーム画面ができあがります。
つまり、ノードは役割を持つ部品、シーンは部品を組み合わせた仕組みと考えると分かりやすくなります。小さなシーンを組み合わせて、より大きなゲームのシーンをつくっていくイメージです。

初めて学ぶときは、画面の変化を確かめよう
教育の場では、最初から用語を正確に説明し切ろうとするよりも、画面で起きる変化と結び付けて学ぶことを大切にしています。たとえば、次のような小さな試し方がおすすめです。
Sprite2Dを追加し、画像を設定して画面に表示するLabelを追加し、表示する文字を変えてみるCollisionShape2Dを加え、当たり判定の形や大きさを確認する- それらをプレイヤーのシーンとして保存し、ゲーム画面のシーンに置く
ノードを一つ追加するたびに、「画面の何が変わったか」「この部品にはどんな役割があるか」を確かめてみましょう。自分で変更した結果を見れば、ノードとシーンは単なる難しい用語ではなく、ゲームを組み立てるための道具として理解できるようになります。
最初から完璧に理解しなくて大丈夫
ノードとシーンは、最初の一回で完全に理解するものではありません。キャラクターを動かす、敵を置く、画面を切り替えるといった制作を続けるうちに、「この場面ではシーンに分けると便利だ」「この役割は別のノードにしたほうがよい」と実感できるようになります。
分からない言葉が出てきたときは、止まってしまう必要はありません。小さなゲームをつくりながら何度も触れ、あとから説明を読み直すことで理解が深まります。ゲーム制作は、知識を覚えてから始めるものではなく、つくりながら学べる活動です。
無料テキストで基本操作を確認する
ノードやシーンを実際に操作してみたい人は、無料テキストも活用してください。Godotの基本的な画面とゲーム制作の進め方を、順番に確認できます。
- ゲームプログラミングをはじめよう:ゲーム制作の考え方とGodotの基礎を紹介します。
- Godotエンジンの基本操作:画面描画、入力、移動などの基本を確認できます。
次に読む記事
Godotの仕組みを知ったら、次はゲーム制作を学ぶこと自体にどのような意味があるのかを考えてみましょう。次回は、中高生がゲーム制作を通して得られる学びを、遊ぶ側からつくる側へ進む視点で紹介します。
Godotを実際に動かしてみたい人へ
ゲームプログラミングラボでは、ノードとシーンを組み合わせながら、キャラクター移動、敵、当たり判定、スコアを持つ2Dゲームをつくります。
