본문 바로가기
App && Game

[유니티] 도트 게임 만들기 - 2일차 (특정 조건 후 자기자신 없애기 / 오브젝트 삭제하기 / Random.Range 랜덤 함수 사용하기 / 이미지가 씬 뷰에서는 보이고 게임뷰에서는 안 보일 때)

by 배애앰이 좋아 2020. 12. 14.
반응형

도트 게임 기획 :

running game - 수집형 게임 

 

2020.12.06 시작 - 1일차

2020.12.13 - 2일차

 

저번 계획(해야할 일) :

0. 배경 찾아서 넣어주기

1. 장애물 설정 (선택)

2. 충돌 처리 설정

3. 점수 UI 제작 등등

 

장애물 종류 : 돌, 톱니바퀴, 불, 위에 돌, 바늘 총 5개 설정

 

 

1. 특정 조건 후 자기자신 없애기 (장애물 용) / 오브젝트 삭제하기

- 왼쪽으로 계속 이동하다가 객체의 x 좌표가 특정 기준(-12) 보다 작아질 경우 스스로 없어지도록 설정

 

transform.Translate(Vector2.left * Time.deltaTime * moveSpeed);
if(transform.position.x < -12)
{
	Destroy(gameObject);
}

 

2. Random.Range(0, 10) 랜덤 함수 사용하기

- 해당 명령어은 0부터 9까지의 값들 중 하나를 랜덤으로 생성하게 된다.

- 이때, 시작값인 0은 포함(inclusive)되고, 끝값은 제외(exclusive)된다. (10이 포함되지 않는 이유)

 

int n = Random.Range(0, 2); // 0일 경우 하늘 1일 경우 땅

 

3. 오브젝트 생성하기

- Instantiate(생성할 오브젝트, 생성시킬 위치, 회전 정도) 를 나타낸다.

- 아래 코드는 stone이라는 오브젝트를 block1 오브젝트 위치에 회전없이 생성한다는 의미이다.

 

Instantiate(original, position, rotation);

 

public GameObject block1;
public GameObject stone;

Instantiate(stone, block1.transform.position, Quaternion.identity);

 

4. 이미지가 씬 뷰에서는 보이고 게임뷰에서는 안 보일 때

- 보이지 않는 오브젝트 z 좌표 가 카메라보다 앞에 있는지 확인! (비록 2D 게임을 만들지라도...)

 

 

< 장애물 랜덤 생성, 장애물 애니메이션 결과 >

- turnBlock 의 float 변수를 통해서 몇 초간의 턴마다 장애물을 생성할지 정할 수 있게 설정

- check 의 bool 형 변수를 통해서 게임이 시작되어서 장애물을 생성할 지 말지 설정하는 변수

- Random 함수를 활용해서 하늘 장애물을 생성할지 땅 장애물을 생성할지를 정하고 또 세부적으로 땅 장애물 중 어떤 땅 장애물 종류를 생성할지를 랜덤으로 정함.

 

 

 

다음에 해야할 일 :

0. 배경 찾아서 넣어주기

1. 장애물 설정 

2. 충돌 처리 설정 (예정)

3. 점수 UI 제작 등등

반응형

댓글