Godotでは必須のノードを選ぶとき、一番上に出てくる「Node」。正直これの使い道が全然分かっていなかったので、パラメータを確認しておく。あんまり気にする必要なないというのが正直なところ。

説明文には「Base class for all scene objects」と書いてある。Godotに出てくるノードは種類が違っても、たどっていけば最終的にこのNodeに行き着く。Nodeは、Godotのすべてのノードの一番の大元になっている土台のノードということ。
土台と言われてもピンと来なかったので、Nodeをひとつだけシーンに置いてみることにした。

ビューポートを見ても、Nodeを選んでも何も表示されない。文字通り見た目を持たないノードだということを確認した。次はGodotの編集画面の右のほうにあるインスペクターを覗いてみた。

見た目がないノードなのに、これだけの項目が並んでいるのは驚くというかちゃんと理解しなきゃいけないのかと心配になった。
中でも気になったのはProcess > Modeという項目。選択肢はInherit、Pausable、Always、When Paused、Disabledの5つ。AlwaysやDisabledは名前で何となく想像がつくが、Inheritだけは意味が分からなかった。「継承」という単語の意味だが、どうやらInheritは「親ノードのProcess Modeの設定をそのまま引き継ぐ」という意味だった。デフォルトのInheritのままにしておくと、親がポーズ中に止まる設定なら自分も止まり、親が動き続ける設定なら自分も動き続ける。PausableやAlwaysを指定すれば、親の設定を無視して自分だけの挙動を決められる。自分が一番親の時は…謎。
もうひとつ気になったのはPriorityという項目。数値が小さいほど早く処理される。複数のNodeが同時に存在するときの処理順を調整するための項目だ。ただ、実際にどのくらいの数値差でどう変わるのかは、今回の調査だけでは分からなかった。同じ数字の場合とかもどうなるのか、これから調査したい。
今回分かったのは、Nodeが画面に何も映らないただの空箱ではなく、処理のタイミングや順番を管理する仕組みを持ったノードだということ。ただ、Process ModeやPriorityを実際に変えるとどうなるのか、正直まだ想像できていない。これはたぶん、実際にゲームを作りながらポーズ画面を作ったり複数のNodeを動かしたりして、このパラメータをいじってみないと本当の意味では分からないんだろうなと思う。次はそれを試してみたい。



コメント