일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 머신러닝
- CSS
- SQL
- JSP/Servlet
- 컴퓨터비전
- 정보처리기사실기
- 자바스크립트
- 순환신경망
- 딥러닝
- 중학1-1
- 데이터분석
- rnn
- JDBC
- JSP
- 연습문제
- 혼공머신
- 정보처리기사필기
- 상속
- ChatGPT
- 데이터베이스
- 자바
- 파이썬
- 컴퓨터구조
- html/css
- 자바스크립트심화
- 중학수학
- 디버깅
- 자바 실습
- 개발일기
- c언어
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
RPG 게임 실습 프로젝트 - 애니메이션 잘 안되는 부분 해결해보기 본문
지난주부터 시청하며 언리얼 학습하고 있는 동영상이 있는데, 아무리 똑같이 하고 따라 해도 잘 안 되는 부분이 몇 가지 있었다. 어제부터 이 부분을 해결해 보려고 노력 중이다. 아직 다 되지는 않았어도 어떤 부분이 되었는지 기록해보려고 한다.
다 안되더라도 조급하게 생각하지 말고 그냥 넘어가고, 다음에 또 해보며 계속해서 이곳에 추가 작업을 진행할 예정이다.
애니메이션 문제 해결하기
계속해서 애니메이션이 수정되지 않아 처음부터 다시 시청하며 보니 빠진 부분이 있었다.
1. 정지시 고개 돌리는 애니메이션 적용이 안 되는 문제
BP_Player에서 애니메이션 클래스 변경
이제 드디어 해결이 되었다. 다른 기능도 잘 적용할 수 있을 것 같다.
이렇게 정지 상태에서 왼쪽 오른쪽으로 고개를 돌릴 수 있게 되었다.
2. 점프 애니메이션이 적용이 안 되는 문제
ABP_Player
Main 스테이트 머신
땅에 떨어질 수 있도록 To land 상태의 detail창에서 다음을 수정해 주기
jump와 fall에서 적용되도록 바꾸어준다.
To Falling -> Jump
And를 isFalling과 연결해주지 않고 따로 떼어놓았다. 이렇게 하면 되는 줄 알았는데 아니었다.
To Falling
한 가지 빼먹은 것이 있었다. To Falling은 Allis로 설정했는데, 이건 지름길처럼 빠르게 다음 동작으로 연결하는 것 같다.
이 설정에서 처음에는 아무것도 선택하지 않다가 두 번째는 Jump로 선택했으나 여전히 되지 않았다.
그리고 다시 영상을 시청하며 Unarmed Locomotion임을 알고 이걸 선택했더니 이제 점프가 된다.
점프가 안 될 때의 모션
걷기 애니메이션에서 살짝 뜬 동작이 보인다.
점프가 될 때의 모션
여기까지 하는데 얼마나 많은 시간이 걸렸는지 모른다. 2주일은 걸린 것 같다.
3. 웅크린 애니메이션이 적용 안 되는 문제
BP_Player에서 수정하기
IA_Crouch 노드에서 잘못 연결한 노드가 있음을 발견했다. 이름이 같지만 전혀 다른 노드였다.
Target Arm Length에 숫자가 없는 것이 있고 있는 것이 있는데, 처음에는 숫자가 없는 것을 연결해 주었다.
이렇게 바꾸어주고 550을 넣어주면 이제 웅크린 애니메이션이 적용된다. 입력 키의 문제가 아니었다.
ctrl을 누른 다음 이동 키를 누르면 웅크린 자세로 걷는 모션이 된다. 하지만 걸은 위치에서 다시 원 위치로 돌아가는 문제가 생겼다. 이 문제는 또 어떻게 해결해야 할까?
이유를 알았다. 정지 모션이 활성화되어서 그런 거였다. 정지 애니메이션을 조금 빠르게 주면 다시 돌아가는 느낌이 되지 않을 것 같다.
하지만 애니메이션에 너무 많은 시간을 투자할 수 없어 이 정도로 하기로 했다~
아직 확대, 축소 기능은 되지 않고 있다.
4. 기울인 자세 애니메이션이 안 되는 문제
ABP_Player 이벤트 그래프 수정
이벤트 그래프에서 변수 값이 하나 잘못되었다는 것을 알게 되었다.
Yaw Delta로 받아야 하는데 Delta Time을 두 개 만든 것이다. Yaw는 전에 개인 프로젝트에서 학습한 적이 있는데, 고개를 왼쪽 오른쪽으로 돌리는 동작이다. 이걸 만들지 않아서 기울인 자세가 되지 않았던 거였다.
순간을 포착하기 힘들어 이 정도의 애니메이션을 추가해 본다. Delta Time을 2개로 받았을 때의 문제점은 콜리전이 적용이 안되어 모든 물체를 통과해 버린다는 것이다. 이제는 콜리전도 잘 적용이 된다.
작업을 마치고
지난 2~3주 동안 아무리 해도 안되었던 문제였는데 오늘 드디어 해결했다. 사실 고친 것은 아주 사소한 문제였다. 변수 하나를 잘못 받았거나 아래쪽을 클릭해야 하는데 위쪽을 클릭하는 등의 작은 문제였지만, 이 작은 문제가 결코 작지 않음을 느꼈다. 그러니까 언리얼 공부를 할 때는 아주 사소해 보이는 부분이라도 자세히 들여다보고 하나라도 놓치지 않고 그대로 따라 하려고 노력해야 한다는 걸 이번에 배웠다.
이젠 전보다 진지하게 얼리얼 작업에 임하게 되었다. 한 가지 더 배운 점은 바로 이것이다. 어떤 문제가 생길 때 누군가에게 물어보며 빨리 해결하기보다, 혼자서 해결하려고 끙끙대는 시간이 얼마나 중요한지 알게 된 것이다. 문제를 해결하기 위해 찾고 보고 계속해서 돌려보면서 이전에는 보이지 않았던 문제를 발견하게 된다. 그러면서 조금씩 성장하는 것 같다.
이 프로젝트의 애니메이션 마지막 작업은 캐릭터에 머티리얼을 입히는 건데, 어제 잠깐 따라 하다가 다 하지 못했다. 이어서 학습해 볼 것이다.
'게임 개발 공부 > 게임 프로젝트' 카테고리의 다른 글
유저 캐릭터 동작 만들기 1 - Old Input System과 Enhanced Input System (0) | 2024.08.25 |
---|---|
유저 캐릭터 애니메이션 만들기 4 - State Machine으로 상태 흐름 전환하기 (1) | 2024.08.25 |
유저 캐릭터 애니메이션 만들기 3 - Blend Space로 여러가지 동작 연결하기 (0) | 2024.08.25 |
유저 캐릭터 애니메이션 만들기 2 - 상하체를 분리하는 애니메이션 몽타주 기능 (0) | 2024.08.25 |
유저 캐릭터 애니메이션 만들기 1 - 무기 장착과 조준 애니메이션 추가 (0) | 2024.08.25 |