Menu
CoddyTech

체크포인트

Coddy Unity 여정의 실제 게임 만들기 섹션에 포함된 레슨. 56개 중 50번째.

challenge icon

챌린지

중급

허공으로 떨어져도 전체 진행 상황을 잃는 대신 조금만 손해를 보도록 하세요. 이전 수업에서 만든 모든 것을 그대로 유지하세요. 코스에는 빨간 기둥 두 개, Checkpoint1과 Checkpoint2가 있으며, 각 기둥에는 트리거와 Checkpoint 스크립트가 있습니다.

Player에서:

  • Inspector에서 설정하는 fallY 필드(-5)와 플레이어가 시작하는 위치에서 시작하는 리스폰 지점이 있습니다.
  • point를 리스폰 지점으로 설정하는 공개 메서드 SetCheckpoint(Vector3 point)가 있습니다.
  • 플레이어가 fallY 아래로 떨어지면 리스폰 지점으로 돌려보내고 velocity를 초기화합니다. transform.position을 설정하는 것만으로는 충분하지 않습니다. 컨트롤러의 다음 Move는 물리 시스템이 마지막으로 플레이어를 감지한 위치에서 시작하므로 이동을 되돌립니다. 플레이어를 이동하는 동안 컨트롤러를 비활성화하고(controller.enabled = false), 이동한 뒤 다시 활성화하세요.

Checkpoint에서:

  • 플레이어(Player 스크립트가 있는 객체)가 처음으로 트리거에 들어오면 체크포인트의 위치를 플레이어의 리스폰 지점으로 설정하고, 기둥을 초록색으로 바꾸고(Color.green), Checkpoint reached를 로그에 출력합니다.
  • 다시 들어와도 아무 일도 일어나지 않으므로, 이전 체크포인트가 리스폰 지점을 이전 위치로 되돌리지 않습니다.

Play를 누르고 체크포인트에 도달한 다음 허공으로 뛰어내리고, Check를 누르세요.

직접 해보기

using UnityEngine;

public class Checkpoint : MonoBehaviour
{
    // 이 부분은 이후 강의에서 구현합니다: 떨어진 후 다시 돌아올 위치를 바꾸는 깃발입니다.
}

실제 게임 만들기의 모든 레슨