Menu
CoddyTech

엔진 가동하기

Coddy Godot 여정의 프로젝트 섹션에 포함된 레슨. 33개 중 11번째.

위쪽 키를 누르면 엔진이 작동하여 우주선을 기수가 가리키는 방향으로 밀어냅니다. Vector2.UP은 (0, -1)입니다. rotated(rotation)은 우주선이 회전한 만큼 화살표를 회전시킵니다:

if Input.is_action_pressed("move_up"):
	velocity += Vector2.UP.rotated(rotation) * THRUST * delta
position += velocity * delta

엔진은 위치가 아니라 속도를 바꿉니다. 위쪽 키에서 손을 떼면 우주선은 계속 미끄러져 갑니다. 멈추려면 반대 방향으로 돌아서 추진력을 가하세요.

우주선에는 숨겨진 Flame 자식 노드가 있습니다. 엔진이 작동하는 동안 표시하세요: $Flame.visible = Input.is_action_pressed("move_up").

challenge icon

챌린지

중급
  1. const THRUST = 300을 추가합니다.
  2. 위쪽 키를 누르고 있는 동안, 우주선의 velocity에 Vector2.UP.rotated(rotation) * THRUST * delta를 더합니다.
  3. 위쪽 키를 누르고 있든 아니든, 매 프레임 velocity * delta만큼 우주선을 이동합니다.
  4. 위쪽 키를 누르고 있는 동안에만 $Flame을 표시합니다.

직접 해보기

extends CharacterBody2D

const TURN_SPEED = 4.0

func _physics_process(delta):
	rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

프로젝트의 모든 레슨

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