less than 1 minute read

1. 다음 스테이지 이동


private void OnCollisionEnter(Collision collision)함수에 다음과 같은 코드를 넣어준다.

if (collision.collider.CompareTag("Portal"))
    {
        InPortal();
    }

InPortal()이라는 새 함수를 만들어준다.

public void InPortal()
{
    SceneManager.LoadScene("World 2");
}


이후 미리 만들어둔 Portal오브젝트에 새로운 Portal Tag 를 만든 후 Tag를 지정해준다.
이후 Scenes에 들어가서 새로운 Scene을 만든후 이름을 World 2를 지정해준다. 이때 플레이어의 이동을 구현하기 위하여 SingleTon을 사용할 것이다.


2. SingleTon 설정하기

SingleTon이란 오직 한 개의 클래스 인스턴스만을 갖도록 보장하고, 이에 대한 전역적인 접근점을 제공하는 것을 의마한다.
따라서 Scene을 바꿔도 Player는 그대로 있어야 하므로 Player와 그에 상속된 CameraSingleTon화 시킬 것이다.

public static PlayerMove instance = null;

PlayerCamera Script의 맨 처음에 다음과 같이 Script 이름으로 변수를 만들어준다.

private void Awake()
{
    if (instance == null)
    {
        instance = this;
        DontDestroyOnLoad(gameObject);
    }
    else
    {
        if (instance != this)
            Destroy(this.gameObject);
    }
}

이를 위하여 PlayerCameraAwake에 위의 코드를 넣어주면 된다.


3. 실행 화면

이후 완성된 게임 화면이다.

gameplay



개인 공부 기록용 블로그입니다.
틀리거나 오류가 있을 경우 제보해주시면 감사하겠습니다.😁