20231023_기록_골드메탈 유니티 기초 강좌

2023. 10. 23. 21:06IT/TIL

오늘 한 것들

 

골드메탈 유니티 기초 강좌 듣기 (15 ~ 19, BE2) (아래 링크)

https://www.youtube.com/watch?v=7plGPXkmnxQ&list=PLO-mt5Iu5TeYI4dbYwWP8JqZMC9iuUIW2&index=1

 

오늘은 2D 플랫포머 게임 완성하기까지 강의를 들었다.

오늘 했던 실습들은

플레이어 이동 구현,

플레이어 점프 구현,

타일맵 만들기,

몬스터 AI 구현,

플레이어 피격 구현,

몬스터 피격(플레이어 공격) 구현,

게임 매니저 추가 -> 아이템 획득 시 점수 추가, 결승선 추가, 스테이지 추가,

유저 인터페이스 추가,

음향효과 추가로

 

꽤나 많은 강의들을 빠르게 듣고 실습했다.

플레이어 이동과 점프 구현은 

유니티에서 중력 효과와 공기저항 효과를 지원하는 기본적인 기능이 있어서 생각보다 어렵지 않게 구현할 수 있었다.

특히 이동 시에 마찰력을 조절하여 빙판으로 만들 수도 있고, 방향키를 떼자마자 멈추게도 할 수 있는 점이 신기했다.

또, 중력을 조절해서 체공 시간을 늘리거나 줄일 수 있었는데, 게임의 특성 상 중력이 좀 더 큰 것이 속도감이 느껴졌다.

 

타일맵을 만드는 것은 파이썬과 파이게임에서도 비슷하게 있었던 기능인데,

유니티는 인터페이스 적으로 훨씬 편하게 타일맵을 이용하여 스테이지를 만들 수 있었다.

 

몬스터 AI의 구현의 경우에는 파이썬에서 사용하던 방식과 같이

random을 이용하여 몇가지 경우의 ai 중에서 하나를 불러오는 방식을 사용했는데,

실시간으로 함수를 처리하면 과부하가 걸리기에 Invoke를 사용해서 시간을 두게한 점이 인상적이었다.

 

플레이어 애니메이션 때와 같이 몬스터 애니메이션 때에도 좀 더 부드럽게 하는 과정이 난이도가 높았는데,

강의에서 여러번 설명해주셔서 애니메이션의 동작이 훨씬 자연스럽게 만들 수 있었다.

 

이후 플레이어 피격을 구현하면서 몬스터와 플레이어의 충돌을 판정하는 방법을 배웠는데,

몬스터에게 피격 당하는 것은 쉽게 생각했으나,

플레이어가 몬스터를 공격하는 방법은 어떻게 해야되나 쉽게 생각이 나지 않았는데,

'플레이어의 캐릭터가 몬스터보다 y축이 높고 위에서 떨어지는 상태'

라면 공격으로 판정하는 것으로 너무 어렵게 생각했던 것 같다.

강의 덕분에 시간이 오래 걸릴 수 있는 부분을 보다 쉽게 넘어갈 수 있었다.

 

게임 매니저 추가부터는 이전에 게임개발 종합반에서 공부했던 것이나,

확실히 복잡하고 어려운 과정으로 강의는 모두 봤으나,

아직 헷갈리는 부분이 있어서 내일 2D 플랫포머 게임 만들기를 완료하면서 다시 복습할 예정이다.

 

아이템 획득 시 점수 추가, 결승선 추가, 스테이지 추가, 유저 인터페이스 추가, 음향효과 추가는

난이도와 디자인이 추가되는 부분으로 구현하는 것은 어렵지 않으나,

실제로 게임을 플레이하는데 있어서 가장 중요한 부분으로 좀 더 고심하면서 만들어야될 것 같다.

 

2D 플랫포머 게임 만들기 강의는 끝까지 수강하였으나,

실제로 만든 게임은 아직 미완성인 단계로 내일 게임을 마무리할 예정이다.