Menu
CoddyTech

Onready

Coddy Godot 여정의 노드와 씬 섹션에 포함된 레슨. 28개 중 21번째.

매 프레임마다 $Face/Eyes를 쓰면 초당 60번 노드를 찾습니다. 한 번만 찾아 변수에 저장해 두는 편이 더 좋습니다.

스크립트 맨 위의 변수는 노드가 생성될 때 만들어집니다. 아직 자식 노드가 연결되지 않았으므로 $Face/Eyes는 아무것도 찾지 못하고, Godot은 게임을 시작하지 않습니다. 앞에 @onready를 붙이면 노드가 준비되었을 때, _ready()가 실행되기 직전에 Godot이 변수에 값을 넣습니다.

@onready var mouth = $Face/Mouth

func _ready():
	mouth.position.y += 2

그런 다음부터 mouth는 스크립트의 모든 함수에서 해당 노드를 가리킵니다.

challenge icon

챌린지

쉬움

눈이 빙글빙글 도는 어지러운 로봇을 만들어 보세요.

  1. 스크립트 맨 위에서 눈을 변수에 저장하세요: @onready var eyes = $Face/Eyes.
  2. _process()에서 eyes를 시계 방향으로 1초마다 반 바퀴(180도) 돌리세요.

‘플레이’를 누르세요. 눈은 얼굴 가운데를 중심으로 돌고, 로봇은 가만히 있습니다. 그런 다음 ‘확인’을 누르세요.

직접 해보기

extends Node2D

func _process(delta):
	pass

노드와 씬의 모든 레슨

직접 연습해 보세요: Godot 플레이그라운드