Menu
CoddyTech

Изменение цвета

Часть раздела Узлы и сцены путешествия по Godot на Coddy. Урок 22 из 28.

У каждого узла, который рисует, есть modulate — цвет, который окрашивает его. Color состоит из красного, зелёного и синего компонентов, каждый от 0 до 1. Изначально modulate равен белому цвету — Color(1, 1, 1), который ничего не меняет.

Оттенок умножается на собственные цвета узла. На белом объекте ты видишь цвет оттенка. На синем объекте коралловый оттенок даёт фиолетовый цвет.

$Body.modulate = Color(1, 0.78, 0.34)   # янтарный оттенок

modulate также окрашивает дочерние узлы. Окрась Eyes — и изменятся оба глаза. Чтобы окрасить узел, но не его дочерние узлы, используй self_modulate.

challenge icon

Задание

Легко

Сделай так, чтобы глаза робота светились коралловым цветом.

  1. В _ready() задай modulate для eyes.
  2. Используй коралловый цвет: Color(1, 0.42, 0.42).

Нажми «Играть»: оба глаза будут светиться коралловым цветом, а корпус останется синим. Затем нажми «Проверить».

Попробуйте сами

extends Node2D

@onready var eyes = $Face/Eyes

func _ready():
	pass

Все уроки раздела Узлы и сцены

Потренируйтесь самостоятельно: Песочница Godot