⛳ Maze 만들기 5
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
와 그에 상속된 Camera
를 SingleTon화 시킬 것이다.
public static PlayerMove instance = null;
Player
와 Camera
Script의 맨 처음에 다음과 같이 Script 이름으로 변수를 만들어준다.
private void Awake()
{
if (instance == null)
{
instance = this;
DontDestroyOnLoad(gameObject);
}
else
{
if (instance != this)
Destroy(this.gameObject);
}
}
이를 위하여 Player
와 Camera
의 Awake
에 위의 코드를 넣어주면 된다.
3. 실행 화면
이후 완성된 게임 화면이다.
개인 공부 기록용 블로그입니다.
틀리거나 오류가 있을 경우 제보해주시면 감사하겠습니다.😁