2025-05-13 TIL

알고리즘 문제

이번 문제는 분석이나 이해에 어려움이 없습니다.
알고리즘의 구현또한 크게 어렵지 않았는데, 그래프와 DFS에 대해 이미 이해하고 있었기 때문에 쉽게 풀어낼 수 있었던 것 같습니다.
[프로그래머스][C++] 네트워크

최종 프로젝트

무기 액터 추가 및 콤보 공격 구현

무기 액터와 무기를 통한 콤보 공격을 구현했습니다.

무기 액터는 다음과 같은 사항에서 구현했습니다.

  • 스켈레탈 메시를 가집니다.
  • 전환하고자하는 애님 인스턴스를 가집니다.
    • 이 애님 인스턴스는 애니메이션 레이어 인터페이스를 사용하고있습니다.
  • 공격 몽타주를 배열로 가지며, 콤보의 애니메이션으로 사용됩니다.
  • 무기 액터는 플레이어 캐릭터의 오른손 소켓에 부착됩니다.
    • 이를 위해 플레이어 캐릭터의 스켈레탈 본에 소켓을 추가했습니다.

콤보 공격은 다음과 같이 구현했습니다.

  • 플레이어 캐릭터의 입력을 컴포넌트에 전달합니다.
  • 컴포넌트는 공격과 무기 액터를 관리하며, 공격 및 콤보 애니메이션을 재생합니다.
  • 콤보 공격을 위해서 AnimNotifyState를 2개 사용했습니다.
    • 한 개는 데미지 처리를 위한 스테이트이며, 나머지 한 개는 콤보의 입력을 확인하여 콤보를 진행하는 스테이트입니다.

처음에는 그냥 AnimNotify를 사용할까 했는데, AnimNotifyState를 사용하는 방법이 애니메이션이 전환되어도, 상태 관리에 적절하다고 느껴지며 잘 사용한 것 같습니다.

보다 정확하게 AnimNotifyAnimNotifyState의 차이에 대해 이해하기 위해서 각각 효율적인 용도를 살펴보았습니다.

AnimNotify는 단일 이벤트로 사운드 재생, 이펙트 생성 등이 적합하다고 합니다.
AnimNotifyState는 일정 구간 제어를 하는 경우 적합한데 시간적으로 지속되는 동작이나 Tick이 필요한 상황에서 적합합니다.

팀 의사소통

현재 팀원들과의 의사소통이 원활하지 않다라고 느끼는데, 기획적으로 부족한 부분이나 작업에 어려움을 느끼는 경우 이야기를 해보거나 질문을 해보는 등 의사소통을 해야하는데 독단적으로 작업하거나 작업이 많이 지연되는 경우가 있었습니다.

이 경우 우선 해당 팀원과 이야기를 잘 해서 문제는 해결하였습니다.

저는 이 경우를 기억하고 반면교사로 삼아 저 또한 위와 같은 행동으로 실수하지 않기 위해 TIL로서 기록해둡니다.

그리고, 해당 문제가 다시 발생하거나 발생하더라도 빠른 파악을 위해서 다음과 같은 방법을 진행했습니다.

  • 우선 각 팀원들의 진행사항이나 현재 진행중인 작업을 파악하기 위해 노션의 캘린더를 사용하기로 했습니다.
    • 다른 팀은 Jira를 사용하기도 한다고 합니다.
  • 아침 및 저녁에 가벼운 스크럼으로 작업의 진전 사항에 대해 파악하기로 했습니다.

Date:     Updated:

카테고리:

태그:

TIL 카테고리 내 다른 글 보러가기

댓글남기기