1. 피드백 내용
김하연 튜터님 피드백
- AI 시스템: 코드와 몽타주 기능별 분리 잘됨.
다만, Tick()에서 플레이어와 거리 체크하는 부분이 BT의 BeginAttack()(공격 범위 판정)과 겹침 → 용도를 나눌 필요 있음
- 데미지 처리: 부위별 데미지 판정 시 if문 대신 데미지 모디파이어 사용 추천
무기 상태 관리: bool 변수로 상태를 관리하는 대신, enum을 활용한 상태머신(State Machine) 방식 추천
- 기믹(스폰 확률): 현재 하드코딩된 상태 → 데이터 테이블을 활용하여 관리하는 것이 좋음
최민성 튜터님 피드백
- 디자인, 긴장감, 이펙트: 좋음
- UI 부족
- 레벨 디자인을 연기나 안개를 볼류메트릭(Volumetric) 설정하면 끊김이 덜함
2. Keep - 만족하는 부분
김재혁
- AI 인식 시스템: 탐지 범위 내에 플레이어가 들어오면 이동속도가 증가하여 달려드는 방식
- 부위별 피격 데미지 설정
- 몬스터 종류를 쉽게 확장 가능하도록 설계
강성준
- 조준점 줌인/줌아웃 기능: 부드럽게 작동
- 크로스헤어 색 변경: 적을 인식하면 색 변경
- 에임 크기 조정: 속도에 따라 조정됨 (달리면 넓어지고, 걷거나 멈추면 좁아짐)
남선우
- 랜덤 스폰 시스템: 적과 아이템이 랜덤으로 스폰됨
- 플레이어와 상호작용 정상 작동
- 기믹 구현 성공: 문 자동 열림, 포탈을 통한 레벨 전환 자연스럽게 적용됨
3. Problem - 해결이 필요한 부분
김재혁
- BT와 하드코딩의 조화 부족
- 탐지 범위 내 플레이어 감지 후 AI가 달려드는 로직을 BT로 구현하지 못하고 하드코딩
- 보스 몬스터 공격 방식 문제 (점프 공격 애니메이션(Dash) 사용)
하지만 거리를 조절하지 못해 계속 점프 공격만 반복 → 플레이어와 겹치는 문제 발생
강성준
- 총알 피격 처리 방식 아쉬움
초기엔 MuzzleOffset을 사용해 총알 발사
나중에 RayTracing 방식으로 변경 (적 감지 & 피격 처리)
하지만 총알이 보이는 아트적 요소와 RayTracing을 같이 활용했으면 더 좋았을 것 같음
남선우
- 랜덤 스폰 문제
현재 방식은 스폰 박스를 여러 개 설치해야 함 → 비효율적
- 하드코딩으로 인한 유지보수 어려움
수정 사항이 생길 경우 변경이 번거로움
- UI 연결 문제
프로젝트 중반에 UI를 구현하면서, UI가 정상적으로 연결되지 않는 문제 발생
4. Try - 해결책 & 실행 계획
김재혁
- BT와 코드 역할 명확히 구분
BT가 수행하는 로직과 코드가 수행하는 로직을 확실히 나누기
또는, BT를 조작하는 코드를 적절히 배치하여 충돌 방지
- 보스 몬스터 공격 방식 개선
최대 이동 거리 제한을 설정하여 플레이어와 겹치는 문제 해결 (컴포넌트 기준)
공격 패턴 조정:
점프 & 달리기 공격을 함께 사용
공격을 점프/달리기와 연계하여 더 자연스럽게 구성
강성준
- 피격 시 애니메이션 & 이펙트 추가
- 플레이어가 피격당할 때 피드백 강화 (애니메이션 + 피격 이펙트 추가)
몰입감을 높이기 위해 추가 개선 가능
- 총알 & RayTracing 병행 활용
RayTracing으로 피격 판정
하지만 총알 발사 자체는 남겨두고 아트적인 연출 요소로 활용
남선우
- 랜덤 스폰 개선
Line Trace를 사용하여 월드 내 랜덤 배치 가능하도록 변경
- 하드코딩이 아니라 블루프린트와 연계하여 구현
- UI 기획 단계부터 포함
- 프로젝트 초반부터 UI 설계를 검토하고 미리 작업하여 문제 최소화
최종 정리
- AI 시스템 개선 → Tick() & BT 역할 분리, 거리 체크 최적화
- 데미지 처리 개선 → if문 대신 데미지 모디파이어 사용
- 무기 상태 관리 최적화 → bool → enum으로 변경
- 스폰 시스템 개선 → 하드코딩 제거 & 데이터 테이블 또는 Line Trace 활용
- UI 개선 → 초반 기획부터 UI 포함하여 설계