기록 보관소

[Unity/유니티] 입문: 기초만 활용한 3D 게임 만들기[BE1 2/2] 본문

유니티 프로젝트/유니티 3D 입문 : 공 굴리기

[Unity/유니티] 입문: 기초만 활용한 3D 게임 만들기[BE1 2/2]

JongHoon 2022. 1. 9. 22:47

개요

유니티 입문/독학을 위해서 아래 링크의 골드메탈님의 영상들을 하루에 2~3개정도 보고, 각 영상별로 진행 상황 사진 또는 캡처를 올리고 배웠던 점을 요약해서 적는다. 이번 영상은 길이가 길어서 이틀에 걸쳐서 진행할 계획이다.

https://youtube.com/playlist?list=PLO-mt5Iu5TeYI4dbYwWP8JqZMC9iuUIW2 

 

유니티 강좌 기초 채널 Basic

유니티 개발을 처음 시작하시는 입문자 분들을 위한 기초 채널. [ 프로젝트 ] B00 ~ B12 (BE1) : 유니티 필수 기초 B13 ~ B19 (BE2) : 2D 플랫포머 B20 ~ B26 (BE3) : 2D 탑다운 대화형 RPG B27 ~ B37 (BE4) : 2D 종스크롤

www.youtube.com


기초만 꾹꾹 눌러담은 3D 게임 만들기[BE1 2/2]

05.결승점

  • 결승점 만들기

결승점으로 사용할 Goal 오브젝트의 모습
PlayerBall 스크립트 파일. Game Clear와 Restart 내용은 장면 이동 항목에서 추가.
아래 GameManager를 끌어다가 넣었다.

  • GameManager 만들기

Create Empty로 만든 GameManager. 현재 아이템 갯수를 저장하여, 게임의 완료 여부를 판단하는 것을 돕는다.
테스트를 위해서 Item 오브젝트를 4개로 늘렸다.
Total Item Count도 4로 지정했다.

   +)참고로 Find 계열 함수는 CPU 부하를 초래할 수 있으므로 피하는 것을 권장했다. ex) GameObject.FindGameObjectWithTag...

06.장면 이동

  • 게임 클리어 또는 리셋시 장면 불러오기(다음 레벨로 가기, 재시작하기)

PlayerBall 스크립트 파일
stage 변수를 만들고 Inspector 창에서 1의 값을 주었다.
테스트를 위해 아무것도 없는 Scene BE1_2를 만들었다.
Build Setting
BuildSettings에 두개의 Scene을 추가했다.

07.스테이지 추가

  • 스테이지 수정과 추가

스테이지 추가 전 BE1_1 스테이지를 수정했다
그리고 떨어질 때를 대비해서 GameManager에 Box Collider 컴포넌트를 추가했다.
GameManger 스크립트 파일
위 오브젝트들을 BE1_2에 복사하여 붙여넣었다.
수정한 BE1_2. GameManger의 변수 값들(Stage, ItemCount)도 잊지않고 수정했다.
마지막 스테이지 BE1_3의 모습. 모든 아이템을 먹고 완료하면, 다시 1스테이지로 돌아간다.

   +) BE1_3에서 Stage 값이 3으로 설정되어서(BuildSettings에서는 2), GameManager에 떨어졌을때 오류가 생겼다. 그래서 스테이지 명과 stage 값을 BuildSettings에 맞춰서 BE1_0, BE_1, BE1_2로 변경했다.

08.유저 인터페이스

  • UI 만들기

UI는 간단하게 게임 아이템의 개수를 알려주는 것으로 했다.
PlayerBall 스크립트 파일
GameManagerLogic 스크립트 파일
GameManger의 Inspector 창. Stage와 Player 텍스트를 끌어 놓았다
실행하니 잘 적용되었다.
다음 스테이지들도 잊지않고 적용해주었다.

09.빌드

  • 게임 빌드하기

Build Settings의 아래 Build를 누르면된다.
Build 후 만들어진 실행 파일과 실행 파일을 실행한 모습. Play를 누르면 게임이 시작된다.
3스테이지까지 잘 실행되었다.