유니티 - 3,2,1,Go! 카운트 다운 만들기

최장범·2023년 10월 18일
0

TIL

목록 보기
46/50

마리오 카트 같은 게임을 하다보면 출발전에 카운트 다운이 있고 그 시간동안 게임을 제대로 하기위해 준비를 한다. 본인의 프로젝트에도 그런 카운트 다운에서 오는 긴장감을 추가하고 싶어서 추가해보았다.


카운트 다운




  • 이런 식으로 게임이 시작되기 전 카운트 다운을 추가 해주었습니다.

스크립트

  • 관리를 위한 게임 매니저 스크립트에 추가했습니다.
  • 코루틴을 이용했습니다.
public class GameManager : MonoBehaviour
{
	public TMP_Text countdownText;
	private float startTime;
    
    private void Start()
    {
    	if(countdownText != null)
        {
        	Time.timeScale = 0f; //게임 정지
            StartCoroutine(StartGame());
        }
    }
    private IEnumerator StartGame()
    {
        countdownText.text = "3";
        startTime = Time.realtimeSinceStartup;
        yield return new WaitForSecondsRealtime(1);
        countdownText.text = "2";
        yield return new WaitForSecondsRealtime(1);
        countdownText.text = "1";
        yield return new WaitForSecondsRealtime(1);
        countdownText.text = "GO!";
        yield return new WaitForSecondsRealtime(1);
        countdownText.gameObject.SetActive(false);
        Time.timeScale = 1f; // 게임 시작
    }
}

한 줄 생각

  • 게임에서 보던 것들을 직접 하나하나 구현해가는 데에서 정말 많은 재미가 느껴지는 것 같다.

0개의 댓글