게임에는 반드시 설정 버튼을 통해 게임을 중단할 수 있어야 한다.
게임을 중단했을 때, 시간도 멈춰야 하며 게임 플레이 화면이 터치되서도 안된다.
유니티에서 화면은 기본적으로 Canvas로 구성하므로 Canvas를 하나 더 만들거나, Panel을 이용한다.
Canvas나 Panel이나 적용 방식은 동일하다.
설정 버튼을 누르면,
1. 시간을 멈춘다.
Time.timeScale = 0; 반대는 Time.timeScale = 1;
2. 게임 플레이 화면 위에 또다른 화면을 오버랩해서 비활성화시킨다.
if(settingCanvas) settingCanvas.gameObject.SetActive(true);
if(settingCanvas) settingCanvas.gameObject.SetActive(false);
SetActive()를 사용해서 껐다가 켰다가 할 수 있다.(Toggle)
위에 코드는 settingCanvas를 활성화하겠다(일시 중지하겠다)
아래 코드는 settingCanvas를 비활성화하겠다(다시 시작하겠다)
화면이 아예 사라지면 좀 이상하므로, 알파값을 넣어서 반투명으로 해보자.
이러면 화면 위에 화면이 올라온 것처럼 보이고
반투명이라 게임 플레이 화면까지 보여서 좀 더 그럴듯해보인다.
'게임 개발 관련 > Unity3D' 카테고리의 다른 글
[유니티] 애니메이션 클립 구하는 방법! (0) | 2018.03.27 |
---|---|
[유니티] 캔버스 스케일러(Canvas Scaler)를 사용해서 UI 크기 조절하는 방법! (0) | 2018.03.27 |
[유니티] UGUI - (2) RectTransform의 개념 (0) | 2018.03.25 |
[유니티] 데이터 저장하기 - PlayerPrefs 사용 방법... (0) | 2018.03.25 |
[C#] C#에서 수학(Mathf) 관련 함수 사용하기... (0) | 2018.03.25 |