Unity

Unity 게임 개발 배우기 #1 설치 및 기본용어

태은코딩 2024. 11. 28. 19:46

출처 - https://www.youtube.com/watch?v=jsa-nFZAV58

 

1. 유니티 다운로드

1) 유니티 허브 회원가입 및 다운로드

2) 유니티 2022.03.10f1 버전 설치

3) 깃허브 데스크탑 설치 (아래 블로그 참조)

https://read-me.tistory.com/entry/Git-Github-desktop-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95

 

[Git] Github desktop 설치 및 사용법

깃허브 데스크탑을 일 년 내내 사용했는데 편한 방식으로 정리해 두기로 했다 정석으로 더 잘 쓸 수 있는 방법이 있겠지만 우선 이 정도만 써도 프로젝트를 할 때는 문제가 없다 깃허브 데스크

read-me.tistory.com

 

2. 간단한 유니티 용어 배우기

1. GameObject : 유니티 기본단위(캐릭터, 빛, 카메라)

2. Scene : GameObject들이 모여있는 공간

3. Component : GameObject구성 요소

 

1. 하이어라키 : Scene을 이루는 GameObject들 나타냄

2. 프로젝트: 컴퓨터 로컬 유니티 폴더와 연결된 창, C#스크립트와 이미지 등 저장

3. 콘솔 : 에러, 경고 등 출력하는 창 

4. 씬 : GameObject들을 조작 보여주는 화면

5. 게임 : Camera에 비춰지는 실제 화면

6. 인스펙터: GameObject에 대한 Componet들 나타냄

기본 화면 설정 우측위 버튼에서 2 by 3누르기

console창은 좌측 위 Window->general->console 로 띄운다.

 

3. C#스크립트 만들기

1. project에서 create->c#script를 눌러서 스크립트 만든다.

2. hierachy에 createEmpty 한개를 생성하고, inspector에 만든 C#스크립트를 드래그한다.

3. 게임을 실행

다음과 같이 실행되는 것을 볼 수 있다.

주기 함수

  • 한번만 실행 : Start, Awake
  • 반복 실행 : Update, LateUpdate, FixedUpdate, OnTriggerXXX, OnCollisionXXX
  • 특수 조건 : OnDisable, ONDestroy, OnApplicationQuit, ONEnable

4. Unity의 자료형

  • Int : 정수 (ex : 10)
  • Float : 실수 (ex: 0.1f, 0.356f) 유니티에서는 뒤에 f붙여준다.
  • String : 단어 및 문장 (ex : "Hello World")
  • Vector3 : 3가지 실수를 x,y,z로 표현, 주로 3D좌표를 나타날때 사용 (ex: Vector3(0.1f, 0.2f, 0.3f))
  • Vector2 : 2가지 실수를 x,y로 표현. 주로 2D좌표를 나타날때 사용(ex: Vector3(0.1f, 0.2f))

아래와 같이 Test2 C#script를 만들고, CreateEmpty의 component에 넣고 실행시키면 다음 결과가 나온다.

* 코드 짤 때 ctrl+d하면 그 줄 복사된다.

5. 함수

함수 : 연산을 하는 코드 묶음, 입력값(매개변수)을 넣으면 출력이 나오는 구조

*반환 자료형을 유의해라

아래 함수를 만들어 보자.

  • Debug.Log()가 C#에서 print같은 존재
  • $""가 파이썬의 f-string같은 존재이다.

 

6. 배경 꾸미기 실습

1. 바닥 : hierachy->3Dobject->plane, 위치 Position(0,0,0)으로 설정

2. 캐릭터 : hierachy->3Dobject->capsuele, 이름 Player로 바꿔주고, 위치 Position(0,0,0)설정

3. 카메라 : Position(0, 10, -10), Rotation(45, 0, 0)

4. Material : 질감, 색상 드의 정보가 담겨있는 파일, 모델이라는 껍대기에, 머터리얼이라는 가죽을 씌우는 느낌

project->create->material, (이름은 Player로)

Albedo에서 색상 바꾸고, 드래그해서 Player에 색상 입히기

 

7. 플레이어 이동하기

C#script Player을 만들고 다음과 같이 입력

Input.GetKey(KeyCode.A)하면 A키를 입력한 경우 조건문으로 받는다.

this.transform.position은 this객체의 멤버 변수를 변환해준다.

Time.deltaTime은 컴퓨터 프레임 소화 능력에 비례해 동일하게 작동하도록 해줌.

Player 스크립트를 컴포넌트에 넣고 실행시키면 다음과 같이 WASD로 움직이는 것을 볼 수 있다.