1. 캐릭무브 > Orient Rotation to Movement를 켜준다.
캐릭터가 이동방향을 따르도록 자동회전시켜준다.
즉, 여기서 캐릭은 우측을 보고있어도 w를 누르면 이동방향인 빨간화살표 방향으로 캐릭을 자동 회전시킨다.
2. 버그 : d를 누르면 원형으로 회전을하는버그
원인 : 캐릭기준 이동으로 컨트롤러의 코드를 짜놓았기 떄문에
캐릭기준 초록방향으로 찔끔이동하고, 우측으로 찔끔 회전을 한다.
이를 반복하기떄문에 우측원형으로 뱅글뱅글 돈다.
해결 : 컨트롤러에서 캐릭기준이 아니라, 카메라 기준으로 이동하도록 바꿔야한다.
이동대상에 캐릭노드를 끊어주면 된다.
이러면 빨간큰화살표 기준(카메라기준)으로 이동 을시키고, 그쪽으로 회전시키기 떄문에
버그가 없어진다.
2. 총쏘는 애니 구현
1. State애 추가하면 될까?
이러면 총쏠때는 무빙을 멈추고 총을 쏠것임....
해결 : 애니메이션 몽타주! (여러애니메이션을 동시 실행 가능)
2. ABP 생성, 대상 스켈레톤 지정(벨리카)
3. 애니 에셋들을 드래그해서 조합해준다.
우측의 슬롯에서 Fire 라는 슬롯을 만들어보자. (없으면 윈도우옵션에서 키면됨)
4. 좌클릭시 총을쏘도록 구현
좌클릭 -> 컨트롤러클래스에서 처리
총을쏘는함수 -> 플레이어 에서 함수로 만들면 되겠다.
인자 start는 Am_fire의 start인듯 하다.
※ am_fire에서 빨간부분을 수정했더니, 실행되는 애니가 캐스트까지 실행된다.
5. 실행이 안되는 버그를 볼수있다.
해결 : 몽타주를 ABP에 연결해줘야 실제 실행이됨
방법 : Choose Anim 이후, Fire가 있다면, 덮어쓰기하는 방식으로 구현한다.
문제 : 다리가 좋버그처럼 움직임
해결 : 상하체 애니메이션을 분리시키면됨 //상체 : 총 , 하체 : 걷기
6. 상하체 분리시키기
기본애니를 loco에 저장하고
총쏘는게있다면 총쏘는걸 실행하는 애니를 fire에 저장한다
그이후 blend per bone 에 연결하고
무슨뼈를 기준으로 애니를 분할할건지 입력해준다. (애니쪽 스켈레톤 트리를 뒤져보면 있음)
7. 정상실행
'UE5 > 애니메이션' 카테고리의 다른 글
[UE5] 버그수정 // 이동시 애니메이션 멈춤, 캐릭속도제한 (0) | 2024.05.16 |
---|---|
[UE5] 애니매이션 // 이동, idle시 애니메이션 구현 (0) | 2024.05.16 |