Unity2

1 minute read

Unity 공부 2일차


1. 라이프 사이클

유니티에서는 C#이나 JavaScript를 사용하지만 나는 유니티가 권장하는 대로 C#을 이용해서 코드를 짤 것이다. C#에서 우리는 class가 MonoBehaviour를 상속 받는 것을 볼 수 있다. 게임 상의 대부분 오브젝트를 만들 때 이를 계속해서 사용할 것이다.

라이프 사이클이란 유니티의 생명 주기이다. 아래의 과정을 따라 진행된다.

  • Awake -> Enable -> Start -> Update -> Destory
  • Awake : 최초로 로딩 될 시에 한 번 실행된다.
  • Enable : 게임 오브젝트를 활성화 할 때마다 호출된다.
  • Start : 여러 기본 값을 설정한다. Awake와 다르게 여러 번 호출 가능하다.
  • Update : 하나의 프레임마다 실행되고 주요 로직이 여기 있다.
  • FixedUpdate : 주로 물리 엔진을 사용하는 경우 일정한 주기로 힘을 가한다. 하나의 고정 프레임마다 실행한다.
  • DIsable : 오브젝트가 꺼질 때 실행한다. 여러 번 실행이 가능하다.
  • Destroy : 오브젝트에 삭제 명령이 내려지거나 Scene이 바뀔 때 실행

image


2. 키보드의 입력 받기

이번에는 키보드의 입력을 받고 이를 콘솔에서 관찰해보자.

image

C# 스크립트에 다음과 같이 코드를 작성한다. Input은 사용자로부터 입력을 받는 것이고, anyKeyDown은 어떤 키의 입력이 Down됐을 경우이다. 이는 bool 값이기 때문에 if문으로 구분해주기로 한다. 키의 입력은 크게 세 가지로 나누어 구성된다. Down, Stay, Up으로 구성된다. Down은 말그대로 키가 눌린 상황, Stay는 눌린 채로 머무르게 되는 것이고 Up은 키가 누르고 뗄 때를 말한다. 그렇게 해서 콘솔 창에는 이러한 결과가 뜨게 된다.

image

맨 처음에 키를 입력받고 계속 입력받는 중인 결과가 나오게 된다.

다음으로는 GetKey를 사용해서 구분해서 값을 받아보자.

image

아까 Down, Stay, Up을 배웠던 것을 적용해서 사용해보았다. 결과 화면은 이렇다.

image

Updated: