Menu
CoddyTech

表示と非表示

CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 23/28。

ノードが表示されているとき、visibleはtrueで、非表示のときはfalseです。非表示のノードは、その子ノードも非表示にします。hide()とshow()は、値を設定するのと同じ動作をします。

$Mouth.visible = false   # または $Mouth.hide()

notはtrueをfalseに、またその逆に切り替えます。つまり、bulb.visible = not bulb.visibleとすると、電球が表示されていた場合は非表示になり、非表示だった場合は表示されます。

点滅させるには、タイマーを動かします。deltaを加算するノード変数で、秒数を数えます。指定した時間に達したら切り替え、その時間をタイマーから差し引きます。

timer += delta
if timer >= 1.0:
	timer -= 1.0
	print("tick")

これで、1秒ごとにtickが出力されます。

challenge icon

チャレンジ

簡単

ロボットのアンテナの電球を点滅させましょう。

  1. _process()で、毎フレームtimerにdeltaを加えます。
  2. timerが0.5に達したら、timerから0.5を引き、bulb.visibleを切り替えます。

「プレイ」を押すと、電球は点灯した状態から始まり、その後0.5秒ごとに消灯と点灯を繰り返します。その後、「確認」を押します。

自分で試してみよう

extends Node2D

@onready var bulb = $Bulb
var timer = 0.0

func _process(delta):
	pass
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ノードとシーンのすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド