
검은신화 | 오공
| 프로젝트 설명 | 게임 오공의 보스전 중 호선봉 전투를 UE BluePrint 로 구현 |
|---|---|
| 스킬 | BluePrintUnreal |
| 기간 | |
| 시연 영상 | https://youtu.be/Srpzo-DOX6k?si=98G9c27C2vAV3BdT |
| git | https://github.com/jjonjung?tab=repositories |
| 성과 | ✔️ BluePrint 기반으로 전체 구현 ✔️ 플레이어 행동 처리 (이동 거리 기반 걷기/달리기, 회전, 카메라 처리 로직을 BP로 직접 구현) |
| 기여도 분석 | - 총 인원 2명 - 상대 기여도: 약 35% - 분석 근거 1. 본인 담당: 플레이어 2. 타 팀원 담당: AI 적, 시스템 |
✔️ 간트차트, Git
🔹간트 차트 - 프로젝트 진행 상황
🔹Git - 프로젝트 협업 프로세스 구축 Git 사용 가이드 문서화
협업 시스템 구축, 기술 커뮤니케이션, 리스크 관리
배경
- Git 사용 경험이 없는 팀원이 있어 협업 과정에서 브랜치 충돌 및 작업 관리 문제가 발생할 가능성이 있었음
- 문제 해결
- Git 협업 프로세스를 정리한 Git 사용 가이드 문서 제작
- 다음 내용을 포함하여 PDF 문서로 배포
- Git 기본 개념 (Repository / Commit / Branch)
- 협업 브랜치 전략
- Pull / Push / Merge 절차
- 충돌 발생 시 해결 방법
- 팀원들이 참고할 수 있도록 실제 프로젝트 workflow 기준으로 정리
✔️ 게임 소개
✔️ 시연 영상
✔️ 핵심 구현 내용
| 구현 요소 | 세부 동작 |
| 이동 | 방향키 이동, 점프, 구르기 |
| 공격 | 사운드, 히트 이펙트, hit 값 출력 |
| 피격 | 넉백, 히트 스톱 |
| 보스 Ai | 공격, 추적, 피격, 회피, 사운드, 이펙트 |
| UI | 메인메뉴UI, 레디UI, HP, 사운드 |
2️⃣
플레이어 구현 - 카메라 제어
- 3차원 공간 -> 회전 세 개의 축(X, Y, Z)
- 각각의 축 기준 순차적 회전 → Roll, Pitch, Yaw
- 회전 순서에 따라, 표현 방식 달라짐 (예: Z-X-Z, X-Y-Z 등)
- 락온 시에는 LookAtRotation으로 계산된 오일러 각 값을 사용하여 Yaw을 강제로 설정
- 회전 축 하나 고정->Yaw, Roll 겹침 ->나머지 회전 계산이 꼬임->카메라 무제한 회전 문제
| 구현 요소 | 세부 동작 | 사용 기술 |
|---|---|---|
| 카메라 제어 | - SpringArm - FollowCamera - 카메라 회전 제어 | - SpringArm Component - Use Pawn Control Rotation - Camera Lag - Controller / Camera 회전 |
| Yaw 기반 이동 | - 축 기반 | - GetControlRotation → BreakRot → Yaw - GetForwardVector() |
| 방향 벡터 계산 | - 보스 움직임 재활성화 | - Add Movement Input(CameraForwardVector) |
| 줌인/아웃 | - SpringArm 길이 조절 | - SpringArm 길이 조절 - 백터 축 기반 거리 감지 |
🔹LockOn
| 구현 요소 | 세부 동작 | 사용 기술 |
|---|---|---|
| 락온 (카메라 고정) | 좌우 방향성 판별 | - 캐릭터 → 대상 방향 벡터 계산 (LookAt) - 단순한 카메라 고정이 아닌, 카메라 벡터와 대상 벡터 간 외적을 기반으로 방향성 제어 |
| 구현 요소 | 세부 동작 | 사용 기술 |
| LockOn | - Enemy 시점 고정 | - Find Look at Rotation - SetActorRotation - Dot Product로 시야 내 감지 - SpringArm → SetWorldRotation - Socket Offset으로 위치 조절 |
3️⃣
플레이어 구현 - Skill
🔹일반 공격 - 봉 타격
| 구현 요소 | 세부 동작 | 사용 기술 |
| 때리기 | 이동 입력 처리 | - 전방 돌진 (InputAction, LaunchCharacter) - 상태 제어 (조건 분기(Branch), Delay, DoOnce) - 공격 판정 (Collision, Overlap, Ignore Channels) |
🔹일반 공격 - 봉 타격 발생 이펙트
| 구현 요소 | 세부 동작 | 사용 기술 |
|---|---|---|
| - 충돌 위치 이펙트 - Hit 데미지 출력 | - 애니메이션 실행 - 무기 충돌 판정 - Hit 데미지 계산 및 출력 - 이펙트, 데미지 출력 | - Play Anim Montage - Staff Collision - OnComponentBeginOverlap - Get World Location - Niagara Spawn - Append: 데미지 수치 + "Player" 문자열 구성 - 데미지 숫자 시각화 |
| 구현 요소 | 세부 동작 | 사용 기술 |
|---|---|---|
| 사운드 및 파티클 | 무기 충돌 시 위치 값 받아 출력 | - 애니메이션 노드 이펙트, 사운드 동시 실행 - 충돌 지점 attack 수, 파티클 생성 |
🔹정지술
| 구현 요소 | 세부 동작 | 사용 기술 |
|---|---|---|
| 입력 처리 | 정지술 키 입력 | - Action Input - Custom Event |
| 대상 감지 | 호선봉 감지 (범위 내 추적) | - Sphere Trace for Objects - Cast To BP_HB - Actor Filter |
| 딜레이 | 3초간 시간 정지 유지 | -Delay (3.0초) |
| 보스 복원 | 보스 움직임 재활성화 | - Cast to bp_hb, create function - Restore Speed |
















