관리 메뉴

有希

Scene Manager 본문

프로그래밍/UnityEngine기초

Scene Manager

有希. 2021. 9. 4. 23:18

전체 씬을 관리하는 매니저. 각각의 오브젝트는 항상 존재한다는 보장이 없다. 그래서 항상 존재하는 Manager를 하나 두어서 해당 씬에서 항상 존재하며 다른 오브젝트들을 관리한다. 약간 GM같은 느낌?

Base 클래스를 둬서 virtual로 init, clear 함수 선언

게임, 로비 등의 씬들은 이 Base클래스를 상속받는다.

Start()안에 Init을 넣어 시작해준다. 그리고, Init안에 해줘야 할 일들을 넣어준다.(start에서는 init함수 호출만 한다. UI를 보여주는 showUI같은 함수들을 작성해서 Init안에 넣어준다.)

EventSystem이 없으면 입력같은게 안되고 크러시가 나니까, EventSystem을 Prefab으로 만들어서 이것을 GameObject.FindObjectType을 이용해서 찾은다음 없으면 추가해준다.

start보다도 awake가 더 빨리 생성된다. 뭔가 특수한 처리를 하고 싶다면 awake를 사용해도 된다.

LoginScene->GameScene으로 넘어가려면?

-하드코딩: update문에서 input.getkey로 특정키를 누르면 유니티 내장 SceneManger.LoadScene("넘어갈씬이름")을 통해 넘긴다.

-따로 클래스를 만들어서 하되, 기존의 LoadScene 함수를 이용해서 불러와준다.

 

'프로그래밍 > UnityEngine기초' 카테고리의 다른 글

Object Pooling  (0) 2021.09.04
Sound Manager  (0) 2021.09.04
UI_Manager  (0) 2021.09.04
Extension 클래스  (0) 2021.09.04
UI Event Handler  (0) 2021.09.04