본 포스트는 조코딩님의 "누구나 할 수 있는 유니티 수익형 게임 만들기 1강"을 정리한 내용입니다.
https://www.youtube.com/watch?v=jbBANDFK2M0
사용 버전: unity 2020.3.18f1
지금까지 유니티 엔진에서 제공하는 기능들을 사용하여 기본적인 UI 구성과 물리 엔진 적용을 진행하였습니다. 이제는 게임의 핵심적인 기능을 구현해볼 차례입니다. 다시 한번 언급하면 플래피 버드는 기본적으로 사용자가 터치를 하면 새가 점프하는 동작을 하게 되고, 이를 통해 장애물을 피해가는 게임입니다. 지금부터는 새가 점프하는 동작을 구현해보겠습니다.
점프 동작을 구현하기 위해서는 script를 작성해야합니다. 이를 위해 편집기 연결이 필요한데, 가벼운 편에 속하는 visual studio code를 이용하고자 합니다.
상단의 Edit 버튼 -> Preferences -> External Tools -> External Script Editor를 Visual Studio Code로 설정
추가로 Visual Studio Code를 사용하기 위해 하단의 Extension 설치가 필요합니다.
Extension 설치
1. C#
2. Debugger for Unity
3. Unity Tools
4. Unity Code Snippets (자동 완성 기능)
다음으로 SDK 설치가 필요합니다. (64비트의 경우 x64, 32비트의 경우 x86을 다운받습니다.)
https://dotnet.microsoft.com/en-us/download/dotnet/sdk-for-vs-code
또한 하단의 링크에서 Developer Pack을 설치합니다.
https://dotnet.microsoft.com/en-us/download/dotnet-framework/net471
이제 점프 동작을 구현해보겠습니다. 먼저, Hierarchy View에서 Bird object를 선택하고 Inspector 창에서 Add Component를 선택한 후 하단의 New Script를 선택해줍니다. (이름은 영상과 동일하게 BirdJump로 설정하였습니다.)
Script가 Component로 생성되면, BirdJump를 더블 클릭하여 Visual Studio Code에서 해당 Script를 엽니다.
- using: 다른 언어에서 import와 동일한 의미로 외부 모듈 또는 라이브러리를 가져오기 위함
- void Start(): 최초 한번 실행
- void Update(): 매 프레임마다 실행
- 프레임이란?: 영상과 애니메이션을 볼 때 영상은 실제로 조금씩 변화되는 이미지가 연결되어 영상이 됨. 빠르게 지나가는 이미지가 영상이 되는데 fps는 frame per second의 약자로, 초 당 몇 프레임이 지나가는지에 대한 것이다. 24fps: 1초당 이미지가 24장이 지나감을 의미. Update의 경우 기본적으로 60 fps가 적용되어 있음
본격적으로 점프 기능을 구현해볼 텐데, 화면을 터치했을 때 새가 날아 오르게 작성이 필요합니다. if문을 사용하여 화면이 터치되었을 때를 나타내고 해당 조건절 안에 중력을 위쪽 방향으로 작용시키면 터치가 될 때 새가 위로 날게 될것입니다.