色を変える
CoddyのGodotジャーニー「ノードとシーン」セクションの一部。レッスン 22/28。
描画を行うすべてのノードには、その色合いを変える色であるmodulateがあります。Colorは赤、緑、青の各成分からなり、それぞれ0から1までの値を取ります。modulateは白のColor(1, 1, 1)で始まり、これは何も変えません。
色合いはノード自体の色に乗算されます。白いものには色合いの色がそのまま見えます。青いものにサンゴ色の色合いを付けると、紫になります。
$Body.modulate = Color(1, 0.78, 0.34) # 琥珀色の色合いmodulateはノードの子ノードにも色合いを付けます。Eyesに色合いを付けると、両目の色が変わります。子ノードには適用せず、ノードだけに色合いを付けるには、self_modulateを使います。
チャレンジ
簡単ロボットの目をサンゴ色に光らせましょう。
_ready()で、eyesのmodulateを設定します。- サンゴ色を使います:
Color(1, 0.42, 0.42)。
「プレイ」を押すと、両目がサンゴ色に光り、体は青いままです。その後、「確認」を押します。
自分で試してみよう
extends Node2D
@onready var eyes = $Face/Eyes
func _ready():
pass
ノードとシーンのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド