Home [Lilium] E01. 지형과 애니메이션 제작
Post
Cancel

[Lilium] E01. 지형과 애니메이션 제작

결과


내용

타임랩스


디테일

메타휴먼을 이용한 플레이어를 생성해 사용하려고 했으나 5의 기능을 4로 가져오는 것이 쉽지 않았다.
우선 파라곤 캐릭터 벨리카 중위를 사용했다.

01

지형을 만드는 것은 그리 어렵지 않았다.
상단 툴바의 모드버튼이나 기본 단축키 Shift + 2로 랜드스케이프 모드로 들어올 수 있는데
생성된 랜드스케이프 액터가 없다면 관리탭에서 생성을 하게 되고
이후 스컬프팅 탭에서 지형을 조각할 수 있다.
지형의 조각이 마무리되면 페인트탭에서 지형에 머터리얼을 발라줄 수 있는데

02

단순한 머터리얼은 사용할 수 없고 랜드스케이프용 머터리얼을 다음과 같이 따로 생성해야한다.
이러한 에디터 기능을 이용해 플레이가 가능한 영역을 공들여 꾸며주었다.

Image

지형을 만들고 난 후 지형을 둘러보니 보스전의 주 무대가 될 영역이 푸르스름한 빛을 내고 있었다.
도대체 이게 무엇일까? 고민했고 우선 맵에서 파란색을 띄고 있는 것은 하늘밖에 없으니
하늘을 덮어보기로 했다.

Image

큰 큐브를 만들어서 천장을 만들어 봤는데 전혀 영향을 받지 않았다.
그래서 아 하늘 색이랑은 관계가 없는건가? 싶어서 난관에 봉착했는데
강사님께서 굴절과 반사로 인한 문제라면 리플렉션캡쳐가 맞고
두번째로 메탈릭이 1이고 러프니스가 0인 물체를 만들어서 물체의 상단부에서
리플렉션캡쳐가 리턴하는 값이 무엇인지를 알아보라는 힌트를 주셨다.

Image

머터리얼을 하나 만들어서 배치해보니 결국 반사값중 높은 비중으로 하늘의 파란색이
반사되기 때문이라는 걸 알았고 인터넷에 리플렉션캡쳐 끄는법을 검색했더니
간단하게 리플렉션캡쳐에서 Brightness 값을 0으로 하면 된다고 했다.

03

Brightness 값을 조정해줬지만 경계면은 여전히 티가 나서
리플렉션캡쳐의 경계선을 따라 스태틱 메쉬를 배치했다.
그렇게 해서 뭘 이런걸 고민했나 싶을정도로 쉽게 해결이 되었다.

그냥 리플렉션캡쳐를 지울까 생각도 해봤지만
이게 반사와 굴절효과를 싼값에 쓰게 해주는 것이라 생각했기 때문에
화려함이 돋보여야하는 전투씬에서 포인트라이트가 들어간 파티클이 튄다던지 할때
그래픽적으로 더 화려해보이지 않을까 싶어서 지우지 않았다.

Image Image

다음으로는 플레이어 캐릭터가 사용할 애니메이션을 리타겟팅하는 작업을 진행했다.
처음엔 단순하게 리타겟팅하면 에브리띵 이즈 오케이일 것이란 생각으로 리타겟팅을 했다가
엄청난 떡대를 자랑하는 플레이어 캐릭터가 탄생했는데 본이 아예 비틀리는것으로 보였다.
포즈를 아무리 맞춰줘도 포즈 매칭은 본의 뒤틀림에 대한 근본적인 해결은 아니였다.

04

그래서 첫번째 해결법으로 Additive Layer Tracks를 이용해서
애니메이션마다 뒤틀려있는 본들의 위치값을 정상적인 범주로 돌리려는 시도를 했다.
이 기능의 장점은 이미 만들어진 애니메이션에서 추가적인 조정을 해줄수 있다는 것이였으나
아쉽게도 해당 기술을 사용할 당시에는 본의 회전, 스케일은 조정할 수 있었지만
본의 이동에 대해선 조정을 할 수가 없었다.

05

포럼도 보고 스택오버플로우, 레딧 등 인터넷을 한참 돌아다녀봤지만 해답은 엔진 도움말에 있었다.
같은 스켈레톤을 사용하는 크기가 다른 메쉬에 대해 알맞은 애니메이션 스케일을 조정해주고자 할 때
transalation retargeting의 알맞은 타입의 bone mode를 골라주면 되는데
스켈레톤 트리탭에서 옵션버튼을 눌러 리타기팅 옵션 표시를 체크해주면 위처럼 표시가 된다.
서로 다른 스켈레톤을 릭을 이용해 동기화하고 위의 내용을 이용해서 애니메이션을 무사히 넘겨주었다.


문제

한 캐릭터에 통합된 전체 애니메이션을 가져오는게 아니라 여기서 맘에드는거 저기서 맘에드는거
짜름짜름 가져오다보니 캐릭터가 서있는 지면과 발의 높낮이가 애니메이션별로 달라 보기싫다.
여기에 2일정도를 투자해서 첫날은 본이나 다른 경로에서 해결방법이 있는지 찾아보고
해결법을 찾지 못하면 둘쨋날에는 Additive Layer Tracks를 이용해 일일히 애니메이션을 맞춰줘야겠다.

한 캐릭터분에 해당하는 애니메이션을 사용하는 것이 아니라
이곳저곳에서 마음에 드는 애니메이션을 각각 가져오다보니
스켈레톤이 각기 달라 지면과 발의 높낮이 또한 동일하지 못해서
캐릭터가 땅속으로 파묻히거나 공중을 걸어다니는게 몹시 신경쓰인다.
2일정도만 더 투자해서 첫날은 스켈레톤에서 근본적으로 해결할 수 있는지 알아보고
방법이 없다면 Additive Layer Tracks를 이용해서
애니메이션별로 땅과의 높낮이를 맞춰줘야 할 것 같다.

위 영상속의 캐릭터는 원래 사용하려고 했던 캐릭터인데
메타휴먼의 메쉬를 이용해서 제작했더니 UE4로는 불러와지지가 않는다.
단순히 메쉬와 본인데 뭐가 문제일까.. 사용하지 못하는 것이 너무 아쉽다.
하지만 이미 블로그 만든다고 일주일이나 작업을 미뤘고
설 이후에는 블루프린트 프로젝트보다 훨씬 중요한 C++ 프로젝트가 날 기다리고 있다.
블루프린트 프로젝트를 완성하기 위해 사용할 시간도 이미 모자르기 때문에
저 캐릭터는 아쉽지만 다음에 UE5를 활용한 토이프로젝트에서나 사용해야겠다.

근데 그러면 굳이 프로젝트 이름을 Lilium이라고 지을 필요가 없었는데…
아이고 속상하다.

This post is licensed under CC BY 4.0 by the author.

[Lilium] E00. 3인칭 액션 RPG

[Lilium] E02. 콤보어택