【Godot4】Buttonノードの使い方完全入門!ゲーム制御の基本をマスターしよう【signal】

Buttonは、ゲームを制御する基本ノード

Godot4でゲームを作る際に、Buttonノードはユーザーとのインタラクションを扱う基本中の基本です。 「ゲーム開始」や「アイテム購入」「シーン切り替え」など、プレイヤーの行動をトリガーする役割を果たします。

このノードは、ただの見た目だけのボタンではなく、シグナルを通じてゲームの制御の起点となる強力なツールなのです。

Buttonの肝は “pressed” シグナル

Godotのシグナルとは、特定のイベントが発生したときに、自動的に処理を呼び出す仕組みです。 Buttonノードが持つ最も重要なシグナルが、pressed です。

  • ボタンがクリック(タップ)された瞬間に発動
  • 複雑な条件分岐なしに処理を実装可能
  • 複数ボタンを使うことでUI全体の制御ができる
# 例:ボタンが押されたときにゲーム開始
func _on_start_button_pressed():
    get_tree().change_scene("res://game_scene.tscn")

このように、シグナルを使うことでコードの整理がしやすく、トラブルシューティングも簡単になります。

Buttonの使い方

Buttonノードの基本的な使い方は以下の通りです。

まずは、以下のようなシーンを作成します。

1.ノードの追加

  • シーンツリーでルートノード(Node2D)の子ノードとして、 Button を追加
  • 必要に応じてラベルやスタイルを変更

2.シグナルの接続

  • pressed シグナルを選び、スクリプトに接続。
  • 自動的に関数の雛形が作成されます。

3.処理内容を記述

  • ボタンを押した時に起こしたいイベントや挙動を書きます
func _on_button_pressed() -> void:
    print("ボタンが押されました!")

ワンポイント:Buttonのスタイル変更

見た目の調整も簡単で、以下のプロパティが便利です。

  • text : 表示される文字列
  • flat : 枠線の有無を切り替え
  • icon : アイコン画像の設定

まとめ

Buttonは、シンプルでありながら非常に強力なコントロールノードです。

ゲームの進行・選択・イベントのトリガーなど、あらゆる場面で活用できます。

pressed シグナルを起点に、プレイヤーの操作をスマートに処理しましょう。

コメント

タイトルとURLをコピーしました