Unity Project #1 수박게임(2) - Prefab 만들고 생성하기.

Unity 2021.03.23 댓글 moonsu
728x90

1. 과일 오브젝트 만들기

제일 먼저, 떨어질 과일을 생성하는 일을 하려고 한다.

 

히아라키(Hierarchy) 창에서 마우스 우클릭 > 2D Object > Sprites > Circle 을 눌러 오브젝트를 생성한다.

오브젝트가 생성되면 바닥으로 떨어져야 하기 때문에 생성된 오브젝트에 Add Component > Rigidbody2D 를 추가시켜준다.

유니티에서 기본적으로 물리엔진을 지원하기 때문에 컴포넌트 추가만으로도 충분히 자연스럽게 떨어지지만

Gravity Scale이나 Mass를 조절해서 원하는 방식으로 게임을 조절할 수 있다.

 

 

2. 프리팹 만들기

여기까지 만든 오브젝트를 프리팹(Prefab)으로 만들어준다.

프리팹을 만드는 방법은 간단하다. 히아라키 창에 만들어준 오브젝트를 프로젝트(Project) 창으로 드래그&드롭 해주면 끝.

깔끔한 정리를 위해 프로젝트 창 우클릭 > Create > Folder 로 폴더를 생성해 프리팹을 넣어준다.

 

 

3. 스크립트 생성

오브젝트 생성, 삭제 등 전반적인 상태를 관리해줄 스크립트를 작성한다.

프리팹과 마찬가지로 관리를 위해 Scripts 폴더를 생성, 임의의 이름을 가진 스크립트를 만들어준다. (Project > Create > C# Script)

여기선 ObjectManager.cs 란 이름으로 스크립트를 만들었으며 ObjectManager 라는 이름을 가진 빈 오브젝트를 만든 후 해당 스크립트를 넣어준다.

 

 

 

4. 스크립트 작성

실제 게임에선 여러가지 조건이 있지만, 첫 번째 단계로 게임을 실행하면 바로 오브젝트가 생성되도록 해보자.

// 오브젝트가 생성될 Y위치
private static readonly float INIT_T_POS = 4;

// 만들어준 프리팹 오브젝트를 담을 공간
public GameObject mainObject;

private void Start() {
	//오브젝트 생성
	Instantiate(mainObject, new Vector3(0, INIT_Y_POS, 0), Quaternion.identity);
}

- Instantiate ( 생성될 오브젝트, 위치값, 회전값)

 

저장 후 유니티창을 보면 Main Object 이름의 오브젝트를 담을 공간이 생긴다. 앞서 만들어준 프리팹 오브젝트를 넣어준다.

 

 

게임 시작을 누르면 지정한 위치에 오브젝트가 생성되고 Rigidbody2D 컴포넌트를 추가했기 때문에 자동으로 떨어진다.

게임의 다양항 조건들을 차차 파악하여 수박게임을 완성시켜 보도록 하자.

 

 

play.google.com/store/apps/details?id=com.bognstudio.mergegame

 

728x90
반응형

댓글