오늘 할 일은 트리거를 구현하는 일이었습니다.

 

그 중, 가장 먼저 피격 판정/타격 판정 개발을 시도하였습니다.

 

제가 알고 있던 피격/타격 판정 구현 방식은 하나였습니다.

 

Capsule Component를 생성하여 Collision을 적용한 뒤, 이를 Root Component에 붙이는 것.

 

가장 간단하지만 경험 상 공격을 하지 않더라도 Capsule Component만 닿으면 공격 판정이 들어가는 방식이었습니다.

 

이를 좀 더 그럴듯하게 구현하고 싶었습니다.

 

정말로 손이 닿아야지만 타격 판정이 일어나도록.

 

그러면서 몇가지 방법을 생각했습니다.

 

하나는 양 손에 타격용 Capsule Component를 붙인 뒤, 두 Component간의 collision을 체크하는 방법.

 

다른 하나는 손에 해당하는 socket을 직접 collision 체크 하는 방법.

 

우선은 후자가 가능한지 찾아 보다가 OnComponentBeginOverlap가 받는 변수 중 OtherBodyIndex를 발견하였습니다.

 

이를 이용하면 혹시 특정 소켓의 collision을 탐지할수 있지 않을까 싶어 AnswerHub에 질문을 올려놓았습니다.

 

만약 내일 답이 온다면 구현을 할 것이고, 불가능하는 답이 나오거나 답이 없다면 전자의 방식으로 구현을 할 것 같습니다.

 

앞으로 2주가 채 안남았는데 그 안에 모든 트리거가 구현이 될지 슬슬 걱정이되기 시작했습니다.

 

마지막으로, 테스트 중 한가지 버그를 발견했습니다.

 

달리던 도중 점프를 하면, 착지 후 이동속도가 매우 매우 느려지는 버그를 발견했습니다.

 

우선은 이슈로만 등록을 하였고, 고치는건 언제가 될지 모르겠습니다.

 

가능하면 마일스톤 먼저 해결을 하고 일정이 남으면 고쳐보려 합니다.

'개발일지 > Treasure Hunter' 카테고리의 다른 글

20.02.01 개발일지  (0) 2020.02.01
20.01.31 개발일지  (0) 2020.01.31
20.01.30 개발일지  (0) 2020.01.30
20.10.27 개발 일지  (0) 2020.01.27
Treasure Hunter 게시판 소개  (0) 2020.01.24

글 쓰기 앞서, 카테고리를 바꾸었습니다.

 

MBGC는 Mobile Board Game Cafe의 약자로, 기존에 개발하려 하던 Mighty 뿐만 아니라 기타 보드 게임들도 선택해서 플레이 할 수 있도록 하려 합니다.

 

이렇게 바꾼데에는 몇가지 이유가 있습니다.

 

첫번째로, 이런 형식으로 만드는 것이나 그냥 Mighty만 하나 만드는 것이나 큰 차이가 없었습니다.

 

게임 선택 기능을 넣을지 말지만 차이가 있었기에 조금 다르게 수정하였습니다.

 

두번째. 이 프로젝트는 어디까지나 제 포트폴리오를 위해 작성되는 프로젝트입니다.

 

그런 면에서 조금은 더 확장성이 있는 편이 빠른 시일 내에 취직을 못 했을 때에도, 내용적으로도 그럴듯 할 것이라 생각하여 변경하였습니다.

 

세번째. 저는 대학생 떄 게임 동아리에 소속되어 있었습니다.

 

동아리 활동을 하는 동안 후배들에게 게임 개발을 알려주고 싶었고, 졸업 직전에는 졸업 후에 강의를 열고 싶었습니다.

 

하지만 실력이 모자르고 아직 제 앞길도 제대로 닦지 못하여 그러지 못하고 있었습니다.

 

이 프로젝트를 완성을 하게 된다면 이후에는 작은 형태의 게임을 추가 할 수 있는 플랫폼으로 만들어 매년 새로 들어오는 후배들에게 게임 개발을 알려주며 새로운 게임을 도입하는 것이 더 좋다고 생각하여 변경하였습니다.

 

제대로 시작 전에 욕심을 부리는 것 같지만 일단은 그리 하였습니다.

 

오늘 해결해야 할 이슈는 프로젝트 시작 전 단계. 기획 입니다.

 

규칙 정리, UI 이미지 스케치, 마일스톤 정리, 구현 방식 탐색, gitignore 생성 및 프로젝트 올리기. 총 5가지의 항목이 있는데, 이 중 3가지를 처리하였습니다.

 

첫번째로, 규칙 정리가 이루어졌습니다.

 

규칙 정리는 이전에 작성한 기획서를 토대로 나무위키에 작성된 내용을 참고삼아 문서화 하였습니다.

 

작성하면서 제가 알던 규칙이 정석적인 규칙이 아니라는 것을 알 수 있었습니다.

 

또한 점수와 관련된 부분을 정리하면서 수익적인 면에 대해 고민할 수 있었습니다.

 

완성이 된다면 인앱 결제를 통해 게임을 구매하고, 게임 플레이를 한 이후에는 점수에 일정 비율을 반영하여 아바타 꾸미기를 추가하면 좋을 것 같다고 느꼈습니다.

 

두번째로, UI 이미지 스케치가 이루어졌습니다.

 

중간중간 필요한 경고 창 등이 빠졌을 수도 있지만 일반적인 플레이에 필요한 기본적인 UI는 모두 디자인 되었습니다.

 

미적인 감각이 없더라도 무난하게 표현 될 것입니다.

 

마지막으로 마일스톤을 지정했습니다.

 

마일스톤은 지정하기 시작한지 얼마 되지 않고, 아직 개발 경험이 적어 상세하게 적지는 못했습니다.

 

우선은 4월 전까지 멀티플레이를 포함한 플랫폼 기능을 구현 할 예정입니다.

 

Mighty라는 게임은 5월 중순이 되기 전에 기본적인 기능은 구현 할 예정입니다.

 

여기까지 구현이 된다면 당장은 출시를 할 수 있는 상황일 것입니다. 

 

이후로는 시간을 재분배 하여 애니메이션 추가나 새로운 게임 개발 등으로 일정이 나뉠 것 같습니다.

 

다음 개발 일자인 31일에는 블루투스를 이용한 P2P 서버 생성, Unity에서의 UI 개발, 씬 이동 등과 같이 게임 개발에 필요한 기능들에 대해 기술적으로 먼저 알아 볼 것입니다.

 

또한 gitignore도 검색하여 이를 적용하고, 프로젝트 관리를 할 예정입니다.

'폐기된 게시판 > MBGC' 카테고리의 다른 글

20.02.11 개발일지  (0) 2020.02.11
20.02.07 개발일지  (0) 2020.02.07
20.02.04 개발일지  (0) 2020.02.04
20.01.31 개발일지  (0) 2020.01.31
Mighty 소개  (0) 2020.01.24

오늘 개발 해야 했던 부분은 점프 반복이었습니다.

 

하지만 이에 앞서 한가지 소름 돋는 일을 적어볼까 합니다.

 

저는 이전까지 프로젝트를 4.23 버전으로 개발 하다가, 이번에 4.24 버전으로 올렸습니다.

 

그런데 버전을 올리자 멀티플레이 기능이 마비가 되는 일이 발생 했습니다.

 

정확히는 다른 플레이어가 생성한 세션을 검색 할 때 남은 인원이 0으로 처리 되는 문제였습니다.

 

AActor의 Role 호출을 새로운 getter 함수로 바꿨을 뿐인데 이게 무슨 일인가 싶어 이것 저것 건드려 보다가 문뜩 이런 생각이 들었습니다.

 

"이거 생성은 잘 되는데 탐색 한 결과 출력이 이상한거 아니야?"

 

이를 확인하기 위해 해당 함수로 이동하자, 아뿔싸.

 

세션 탐색 후 이를 표기 할 때 최대 수용 인원 정보가 비어 있었습니다.

 

이를 제대로 고칠 수도 있었으나 언젠가는 P2P 방식에서 Dedicated Server로 변경할 예정이기에 당장 테스트가 가능하도록만 수정을 하였습니다.

 

그 후에 드는 생각.

 

"도대체 이전에는 어떻게 됐던 거지?"

 

버전을 내려서 테스트 하기에는 번거롭고 조금 기괴하고 소름 돋는 경험이었습니다.

 

다시 원래 작업으로 돌아와, 점프 반복입니다.

 

점프 키를 누르고 있으면 계속해서 점프가 되어야 하는데 애니메이션은 반복되는 반면, 점프 함수 자체는 1번만 출력이 되었습니다.

 

이전서부터 몽타주를 사용하는 방법을 알고 있었는데 다른 방법이 혹여 있나 하여 시간을 끌다 면접을 보면서 개발을 멈췄었습니다.

 

오늘은 몽타주를 적용해 보았습니다.

 

방식은 2가지가 있었습니다.

 

하나는 착지 몽타주가 끝날 때 점프 함수를 호출하는 것.

 

다른 하나는 점프 몽타주가 재생 되면 점프 함수를 호출하는 것.

 

이 두가지 방법을 Notify 없이 구현을 해보았습니다.

 

하지만 조건이 안 맞았는지 둘 다 제대로 적용이 되지 않았습니다.

 

개발을 멈추기 전에도 이 문제로 오랜 시간 고민을 했던터라 안되니까 갑자기 힘이 쭉 빠지더군요.

 

그래서 이 기능 자체를 차후 구현하는 것으로 변경하였습니다.

 

단순히 취미 같은것이 아니라 어느정도 기간 안에 성과가 뚜렷이 보여야 하는 상황이라 불가피하게 정한 결정입니다.

 

다행히도, 이 기능 구현을 뒤로 미루니 많은 부분이 해결이 되었습니다.

 

첫번째는 Git으로만 관리하던 프로젝트를 Github로 올릴 수 있었습니다. 

 

이전에도 가능은 했으나 현재 branch에서 작업이 남아 있어 이를 하지 않고 있었는데 작업을 미룬 후 드디어 Github에 올렸습니다.

 

덕분에 포트폴리오에는 링크로 대체를 할 수 있게 되었습니다.

 

두 번째는 작업 정리가 가능했습니다.

 

다음 일에 대해 생각을 하게 되니 자연스럽게 앞으로 해야 할 일들을 정리 하는 시간을 가지게 되었습니다.

 

Treasure Hunter의 Issue(Glo)

현재는 이와 같은 형태로 이슈를 정리하고, 마일스톤을 짜 놓은 상태입니다.

 

이에 따라 수요일(화요일은 Mighty 개발 함)부터는 트리거 위주로 개발을 하면 될 것 같습니다.

 

트리거까지 구현이 완료되면 간단한 기능 영상을 촬영해서 공유해보겠습니다.

'개발일지 > Treasure Hunter' 카테고리의 다른 글

20.02.01 개발일지  (0) 2020.02.01
20.01.31 개발일지  (0) 2020.01.31
20.01.30 개발일지  (0) 2020.01.30
20.01.29 개발일지  (0) 2020.01.29
Treasure Hunter 게시판 소개  (0) 2020.01.24

+ Recent posts