유니트 게임개발 기초

반응형

유니티 기본화면

 

scene : 실제 게임의 구성요소를 보는 곳. 실질적인 게임 개발 씬

game : 게임이 실제로 보여지는 곳. play 버튼 클릭 후 볼 수 있음

Hierachy : 게임 내 구성요소를 볼 수 있는 곳. 개발시 자주 필요

Project : 이 프로젝트에 포함된 파일들을 모아볼 수 있는 곳

Inspector : 클릭한 요소의 속성과 정보를 보여주는 곳

 

빗물받는 게임 

1. 기본세팅

⊙ Window → Layouts → 2 by 3

⊙ Project → 점3개 → One Column Layout

⊙ Game Free Aspect ▼ Phone 760x1280(모바일 크기) 생성 후 선택

 

2. 배경 세팅하기

⊙ project에서 Scenes   MainScene로 변경

⊙ Hierarchy 에서 MainScene 우클릭 → 2D Object →  sprite →  Square 클릭 → background 이름 변경

⊙ 배경색 255.255.220.255

⊙ 배경 크기 변경

     background 선택 후 Scale 사이즈 X :6, Y:10

 

3. 점수박스 세팅

Hierarchy 에서 MainScene 우클릭  2D Object   sprite   Square 클릭  ground 이름 변경

⊙ 색상 50,50,50,255

⊙ Scale 사이즈 X :6, Y:1.5 / Position Y:-4.3  (아래 고정)

⊙ inspector 창에서 Additional Settings 밑에 Order in Lyer "1"로 설정

 

4. 이미지 가져오기

⊙ Project 에서 Assets 선택 우클릭 → Create → Folder → images 이름 변경

⊙ 이미지 파일을 생성한 images 폴더로 끌어다 놓기

⊙ 2D Object →  sprite   Square 클릭  rtan 이름 변경

⊙ 이미지를 화면에 보여주기 위해 Inspector 에서 Sprite 부분에 이미지 끌어다 놓기

⊙ Order in Lyer "1"로 설정

⊙ Position Y:-2.9  (X는 왔다갔다 움직임 코드 넣어야함)

 

5. 애니메이션 만들기

⊙ Project 에서 Assets 선택 우클릭 → Create → Folder → Animation 이름 변경

⊙ Animation 폴더 선택 우클릭 → Create Animation rtan_run으로 이름변경

    계속 반복적으로 실행해야 하기 때문에 Loop Time 체크박스 선택

⊙ 애니메이션 생성한 rtan_run을  →  실행할 주체인 2d 오브젝트 생성한 rtan에 끌어다 놓는다

     (그러면 rtan을 선택해보면 Inspector창에 Animator 항목이 보인다.)

⊙ 애니메이션을 만들기 위해 rtan_run을 더블클릭 한다.

⊙ 애니메이션 창에 움직일 이미지(images 폴더에 있는 이미지)를 차례로 원하는 간격을 두고 끌어다 놓는다.

⊙ 상단에 재생버튼을 눌러 애니메이션을 확인해 본다.

 

6. 캐릭터 애니메이션 (C# Script) 코드 넣기

⊙ Project 에서 Assets 선택 우클릭 → Create → Folder → Script 이름 변경

⊙ Script폴더 선택 우클릭 → Create → C# Script → rtan 이름 변경

⊙ C# Script 생성한 rtan을 더블클릭 하면 프로그램창 실행

⊙ 코드 넣고  ctrl+s로 저장 

⊙ rtan C# 스크립트를 → rtan오브젝트에 끌어다 부여해준다.

    (캐릭터가 움직이면서 마우스를 클릭하면 방향전환)

⊙ 재생버튼으로 확인해보기

 

6. 빗방울 애니메이션

⊙ MainScene 우클릭 → 2D Object →  sprite →  Circle 클릭 → rain 이름 변경

⊙ 색상 150,150,255,255

⊙ Order in Lyer "1"로 설정

⊙ Position Y: 4 

⊙ 빗방울에 질량이 있게 세팅하기

    rain오브젝트 선택 → Inspector창에 Add Component 클릭 → Rigidbody 2D 선택

   (Gravity Scale 의 수치를 조정하면 얼마나 빨리 떨어질지 조정)

 

7. 빗방울  (콜라이더라는 속성을 각요소에 먹여주기)

⊙ rain오브젝트 선택 → Add Component 클릭 → Circle collider 2d 선택

⊙ ground 오브젝트 선택 → Add Component 클릭 → Box collider 2d 선택

⊙ 재생버튼을 누르면 빗방울이 땅에 닿으면 멈춘다.

 

8. 빗방울 땅에 닿으면 없어지기 

⊙ 땅에 닿으면 빗방울이 없어져야 하기 때문에 땅인지 알수 있게 태그를 달아줘야 한다.

    ground 오브젝트를 선택하고 Inspector창에 → Untagged를 Add Tag로 선택  

    List is Empty 밑에 "+" 버튼을눌러서 ground로 저장해준다.

다시 ground 오브젝트를 선택하고  → Inspector창에 → Untagged란에 방금만든 ground 태그를 넣어준다.

    (이유: 즉 ground라는 오브젝트 친구는 ground라는 이름표를 달도다니는것으로 생각)

⊙ Script폴더 선택 우클릭 → Create → C# Script → rain 이름 변경 → 더블클릭해서 창을 연다.

⊙ 유니티에는 자동으로 함수를 지원해주는 것들이 많은데

     OnCollisionEnter2D라는 함수는 어떤 collision값을 가지고 있는 오브젝트가

    다른 collision 값을 가지고 있는 오브젝트랑 부딪혔을때 이함수가 무조건 실행되게 할 수 있다.

    (즉, 두 콜라이더가 부딪혔을때 위의 함수에 입력값에는 나와 부딪힌 상대방이 들어온다.)

    ex) void OnCollisionEnter2D(Collision2D coll)

         {

               if (coll.gameObject.tag == "ground")  // 나와 부딪힌 상대 오브젝트 태그가 ground면 

               {

               Debug.Log("땅이다!"); // 땅이다

               }

          }

⊙ rain 스크립트를 rain 오브젝트에 

 

 

반응형

댓글

Designed by JB FACTORY