Menu
CoddyTech

화면 안에 고정하기

Coddy Godot 여정의 입력과 이동 섹션에 포함된 레슨. 28개 중 21번째.

왼쪽으로 달리면 주인공이 화면을 벗어납니다. clamp(value, low, high)는 숫자를 두 끝값 사이에 유지합니다. value가 low보다 작으면 low를, high보다 크면 high를 반환하고, 그 외에는 value를 반환합니다. clamp(700, 14, 626)의 값은 626입니다.

이동한 후 위치를 제한하고 결과를 저장합니다.

move_and_slide()
position.x = clamp(position.x, 14, 626)

position은 주인공의 중심이며, 주인공의 너비는 28픽셀입니다. 따라서 주인공의 중심은 640픽셀 화면의 양쪽 가장자리에서 14픽셀 떨어진 곳에 유지되고, 주인공 전체가 화면에 보입니다.

challenge icon

챌린지

쉬움

영웅이 화면 안에 완전히 보이도록 하세요. move_and_slide() 다음에 position.x를 14와 626 사이로 제한하세요.

직접 해보기

extends CharacterBody2D

var speed = 220
var acceleration = 900
var friction = 2400
var gravity = 1000
var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	if Input.is_action_just_pressed("jump") and is_on_floor():
		velocity.y = jump_velocity
	var direction = Input.get_axis("move_left", "move_right")
	if direction == 0:
		velocity.x = move_toward(velocity.x, 0, friction * delta)
	else:
		velocity.x = move_toward(velocity.x, direction * speed, acceleration * delta)
	if direction > 0:
		$Look.scale.x = 1
	if direction < 0:
		$Look.scale.x = -1
	move_and_slide()
quiz icon실력 점검

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

입력과 이동의 모든 레슨

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