카테고리 없음

2025.01.22 TIL (생선 지키기 게임, 카드 맞추기 게임)

youngheon-kim 2025. 1. 22. 20:38

원래는 제가 어떤 것을 배웠는지 상세히 적을 예정이었지만...

 

그렇게까지 하면 배우는 시간보다 TIL을 쓰는 시간이 더 걸릴것 같아,

무엇을 만들었는지만 간단히 쓰고 핵심 알고리즘이나 명령어에 대해 남겨보도록 하겠습니다.

 

오늘은 두 가지 게임 개발에 관해 학습했습니다.

 

하나는 생선 지키기 게임이고, 다른 하나는 카드 맞추기 게임입니다.

 

1. 생선 지키기 게임

강아지가 먹이를 쏘아올려 생선을 지키는 게임

오늘 해당 게임을 구현하기 위해서 학습을 진행하던 중, 새롭고 흥미로운 점 두 가지를 알게 되었다.

 

 

첫번째는 HP 바 구현이다.

이것만 봐선 뭔지 모르겠

이 중 몹의 겉모습을 담당하는 게임 오브젝트가 Hungry라면,

HP바의 빈 부분을 담당하는건 UI ->Image를 통해 생성된 Back.

HP바의 잔여 부분을 담당하는건 같은 방법을 통해 생성된 Front이다.

Front가 왼쪽을 중심으로 점점 크기를 줄이는 방식으로 HP바를 구현한 것이다.

 

 

두번쨰로 새로우면서도 흥미로웠던 점은,

몹에 따라 타입의 변수값을 다르게 설정하는 점이었다.

type이라는 변수값이 1이면 평범한 고양이를,

type이라는 변수값이 2라면 뚱뚱한 고양이를 생성할 때, 해당 변수값을 Unity에서 미리 할당해줄 수 있다는 점은 기억해두면 좋을 것 같다.

 

 

2. 카드 맞추기 게임

카드의 짝을 맞추는 게임

이번 게임을 구현할때 가장 흥미로웠던 점은, 카드의 배열을 4로 나눴을때의 몫과 나머지를 이용해 정한다는 점이었다.

 

예를 들어, 왼쪽 가장 아래에 있는 카드의 좌표를 (0,0) 이라 가정하고,

오른쪽 가장 위에 있는 카드의 좌표를 (4,4)라고 가정했을 때,

 

카드의 (x,y) 좌표는 카드의 순서값을 n이라 가정했을 때,

(n%4,n/4)가 된다는 점이었다.

 

해당 식을 이용해 카드의 위치와 값을 쉽게 지정해줄 수 있었고, 이해도 쉽게 할 수 있었다.

 

 

 

위 이미지를 참고하면 더 편하게 이해할 수 있다.

 

참고로 n이란 카드 박스 오른쪽 하단에 적힌 숫자를 의미한다.

 

 

 

느낀점

갑자기 해이해져서 정신 놓고 놀기 시작하는 건 한순간이다.

 

정신차리자.