[UE5] TPS 게임의 적 캐릭터에 다양한 모델 적용하기: ALS V4와 VRoid 리타기팅 완벽 가이드

ChangJin·2024년 6월 13일
0

Unreal Engine5

목록 보기
69/102
post-thumbnail

이번 글에서는 TPS 게임에서 적 캐릭터의 다양성을 위해 ALS V4와 VRoid 모델을 리타기팅하는 과정을 소개합니다. 지난 벨로그 글에서 설명한 애니메이션 상태 머신과 함께 다양한 캐릭터를 구현하는 방법을 다룹니다.

참고 자료

  1. 유튜브 튜토리얼 1
  2. 유튜브 튜토리얼 2
  3. Velog 튜토리얼
  4. 유튜브 튜토리얼 3
  5. GitHub: VRM4U 플러그인

니케 Rapi내가 만든 VRoid 모델

프로젝트 목적

TPS 게임을 제작하면서 다양한 캐릭터 모델을 사용해 게임의 풍부함을 더하고 싶었습니다. Advanced Locomotion System V4를 기반으로 리얼한 움직임을 구현하고, VRoid 모델을 리타기팅하여 여러 캐릭터를 구현하는 것이 목표였습니다.


1. VRoid 모델 임포트

VRM4U 플러그인을 사용해 VRoid 모델을 언리얼 엔진에 임포트했습니다. GitHub: VRM4U 플러그인 문서를 참고했습니다.

VRoid 모델을 적당히 만들고 vrm 파일로 내보내기를 한 다음 언리얼에 드래그 앤 드롭으로 import 해줍니다.

내가 만든 VRoid 모델

2. 리타기팅 설정

리타기팅 매니저를 사용해 ALS V4와 VRoid 모델의 스켈레톤 설정을 맞췄고, 애니메이션 블루프린트에서 Transform (Modify) Bone 노드를 사용해 본 트랜스폼을 수정했습니다. 유튜브 튜토리얼 1과 유튜브 튜토리얼 2를 참고했습니다.

임포트한 모델을 alsV4 모델의 애니메이션 블루프린트에 바로 리타기팅을 적용했더니 굉장히 이상한 모습으로 적용이 되었습니다.

혐주의

원인이 무엇이고 왜 이런 현상이 발생하는걸까?
VRM4U 깃허브의 이슈에서 비슷한 일을 겪은 유저의 글을 찾을 수 있었습니다.

https://github.com/ruyo/VRM4U/issues/29

깃허브 이슈 내용 중 일부

요약하자면 vrm으로 가져온 모델의 축이 Third Character의 축과 다르기 때문이었습니다. 위 사진을 보면 알 수 있지만 빨간색 축과 파란색 축. 즉 x축과 z축이 반대로 되어 있습니다.

그래서 블렌더를 직접 열어서 축을 바꾸고 적용해보았습니다. 다행히도 저는 일본어를 할 수 있기 때문에 작업속도가 많이 느리지 않았습니다.

깃허브 이슈 내용 중 일부

그 결과는 다음과 같습니다.

애니메이션 블루프린트경고 메시지

자세히 살펴보니 alsV4 애님 그래프에서 기본으로 적용하고 있는 값들이 이 모델과는 호환이 되지 않았습니다. 그래서 애님 그래프의 노드를 직접 수정하기로 합니다.

수정 중인 애니메이션 블루프린트수정 중인 애니메이션 블루프린트

블루프린트를 모두 수정하고 컴파일을 눌렀는데 다음과 같은 결과가 나왔습니다.

수정 중인 애니메이션 블루프린트

조금 나아지는 듯 했으나 너무 많은 블루프린트 노드를 테스트해가며 고쳐야 했기 때문에 여기서 잠시 멈추고 다른 방법을 떠올려보기로 했습니다.


우리는 늘 답을 찾을 것입니다. 기나긴 야크쉐이빙 끝에 저도 답을 찾게 되었습니다.


일단 생각했던 논리는 A = B 이고 B = C 이면 A = C 이다. 를 적용해보자 였습니다.
축이 다르니 이 축을 보완해 줄 수 있는 다른 리타기터가 있으면 되지 않을까. 라는 생각이었습니다.

먼저 삼인칭 콘텐츠 팩을 추가해줍니다.이 팩의 UE4_Manny에서 vrm 캐릭터로 리타기팅을 해주고 이 결과를 alsV4의 새로운 스켈레톤 메시로 추가해주는 방법입니다.

내가 만든 VRoid 리타기터

이렇게 하면 VRoid에서 가져온 모델을 거의 모든 애니메이션 블루프린트에 적용이 가능합니다. 왜냐하면 Manny와 Mannequein은 기본 TPS 모델이라 이 모델에 리타기팅이 된다면 다른 모델에도 적용이 쉽기 때문입니다.


3. 다양한 캐릭터 적용해보기

니케의 Rapi 캐릭터를 가져와서 적용해봤습니다. VRoid로 만들어진 캐릭터는 다 연결이 가능합니다.

니케 라피블루아카이브 아루

4. Science Fiction Valley Town에 적용해보기

2024년 6월 언리얼엔진 무료 컨텐츠인 Science Fiction Valley Town에 지금까지의 모델을 적용해보았습니다.

다음과 같은 레이 트레이싱 관련 메시지가 뜨는 걸 확인할 수 있는데요.

트레이싱 관련 메시지

프로젝트 세팅에서 하라는대로 옵션을 켜줍니다.

트레이싱 관련 메시지렌더링플랫폼 windows

그리고 게임을 시작하면 다음처럼 정상적으로 적용된 모습을 볼 수 있습니다!

니케 Rapi내가 만든 VRoid 모델

최종 결과

  • 정상 동작 확인: 리타기팅된 VRoid 모델이 ALS V4에서 올바르게 작동함을 확인.
  • 다양한 캐릭터 구현: 적 캐릭터가 다양한 형태로 등장, 게임의 풍부함을 더함.
  • 참고 자료: Velog 튜토리얼, 유튜브 튜토리얼 3.

결론

ALS V4와 VRoid 모델을 리타기팅하여 다양한 캐릭터를 구현하는 과정을 통해 게임의 질을 높일 수 있었습니다. 이 과정에서 여러 자료를 참고하며 많은 것을 배웠고, 이를 통해 TPS 게임을 더욱 풍부하게 만들 수 있었습니다. 현재 진행중인 Lena 프로젝트에 해당 내용을 추가하여 더 다양한 적을 만들 예정입니다.


키워드

  • ALS V4
  • VRoid 모델
  • 언리얼 엔진 5
  • 애니메이션 리타기팅
  • TPS 게임 제작
  • 게임 개발

이 글이 여러분께 도움이 되길 바라며, 앞으로도 많은 관심 부탁드립니다!

profile
Unreal Engine 클라이언트 개발자

0개의 댓글