Godot入門:Labelの使い方と活用法

Node解説

はじめに

Label

Labelとは?

テキスト(文字列)を表示するノード

看板に書かれた文字を見るように、Label はゲーム画面に「テキストを貼り付ける」ノード。看板のサイズや文字の色・大きさは自由に変えられます。

CanvasItem

このノードを使うべき場面

  • ゲーム画面にスコアやHP、レベルなど数値を表示したい
  • ゲーム開始画面や一時停止画面にメッセージやタイトルを表示したい
  • ボタンやメニューアイテムにテキストラベルを付けたい
  • 会話や説明文など、複数行のテキストを表示したい
  • 画面上の位置を指定してUI要素としてテキストを配置したい
  • リッチテキスト(複数の色や装飾が混在)を本格的に使いたい場合 → RichTextLabel を検討
  • 入力フィールドが必要な場合 → LineEditTextEdit を使う

主なプロパティと機能

プロパティ / メソッド説明型 / 戻り値
text表示するテキストString
modulateテキストの色(RGB値)Color
add_theme_font_size_override()フォントサイズを変更void
alignmentテキストの配置(左揃え、中央、右揃え)HorizontalAlignment
custom_minimum_sizeノードが占める最小サイズVector2
autowrap_modeテキストが長いときの自動折り返し設定TextServer.AutowrapMode

extends Node2D

func _ready():
    # Labelノードを作成
    var label = Label.new()
    label.text = "Hello, Godot!"
    label.position = Vector2(100, 50)
    add_child(label)

func _process(delta):
    # スコアを毎フレーム更新する例
    $Label.text = "Score: %d" % score

text

もっと使いこなす:カスタマイズできるパラメータ

1. 文字の色を変える(modulate)

modulate


label.modulate = Color.RED  # 赤
label.modulate = Color(1.0, 0.5, 0.0)  # オレンジ(RGB値で指定)
label.modulate.a = 0.5  # 透明度を50%に

動的な色変更

2. フォントサイズを変える


label.add_theme_font_size_override("font_size", 32)  # サイズを32に

3. テキストの配置を変える(alignment)


label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER  # 中央揃え
label.horizontal_alignment = HORIZONTAL_ALIGNMENT_RIGHT   # 右揃え

4. テキストの自動折り返し


label.autowrap_mode = TextServer.AUTOWRAP_WORD
label.custom_minimum_size = Vector2(300, 0)  # 幅を300に制限

5. ノードのサイズを明示的に指定

custom_minimum_size


label.custom_minimum_size = Vector2(200, 100)  # 幅200、高さ100に固定

6. オフシット(相対位置)を使う


label.offset = Vector2(10, 5)  # テキスト描画位置を右に10、下に5ピクシルずらす

まとめ

Labelノードはテキストを表示するシンプルで強力なノード

  • テキストを更新するには text プロパティに代入するだけ
  • 色やサイズ、配置はプロパティやメソッドで自由にカスタマイズ可能
  • 複数のLabelを組み合わせてUI画面全体を構築できる

RichTextLabel

関連性の高いノード解説記事

この記事は Godot 4.x をもとに執筆しています。

コメント