모드 제작 튜토리얼/프롬 (엘든링 + 다크소울3 ..)

세키로 - 배경 오브젝트 모델 교체 (불상을 토마스 기차로)

skymoon 2020. 3. 31. 19:02

 

 

 

배경 오브젝트 모델을 교체하는 작업은 캐릭터 모델 교체에 비해 훨씬 쉽습니다. 리깅을 하지 않아도 되서 작업이 더 단순합니다.

 

 

 


 

UXM https://www.nexusmods.com/sekiro/mods/26

Flver Editor https://github.com/asasasasasbc/FLVER_Editor

Yabber https://www.nexusmods.com/sekiro/mods/42

불상 파일(Sculptor's Idol) https://drive.google.com/open?id=1xWhZCEr_ujFxFdCp33X9cMrI8mO5fdry

 


UXM : 게임 파일 풀기

https://skymoonmod.tistory.com/9

 

세키로 - 폰트 교체 방법

https://youtu.be/W1np9JtgsXM 모드엔진 https://www.nexusmods.com/sekiro/mods/6 UXM https://www.nexusmods.com/sekiro/mods/26 ffdec https://www.free-decompiler.com/flash/ UXM으로 폰트 파일 추출 UXM은..

skymoonmod.tistory.com

게임의 오브젝트 파일 중에서 불상 관련 파일을 먼저 찾아야 합니다. 게임 데이터를 푸는 건 UXM으로 할 수 있는데 이와 관련된 건 이전의 모드 제작 관련 글을 참고해 주세요.

 

 


모델 교체 작업

 

UXM 으로 파일을 다 풀었을 때 obj 폴더에 있는 파일들이 배경 오브젝트 파일입니다. 그 중에서 3개 파일이 불상 파일인데 영상에서는 위와 같이 모드 폴더 안에 3 파일을 미리 넣어놓고 작업을 진행했습니다. 사실 저 3개 말고 더 있는지는 잘 모르겠습니다. 혹시 빼먹은 게 있으면 알려주세요.

 

 

5000 번 파일을 yabber 로 풀고 풀어서 나온 flver 파일을 flver editor로 열어줍니다. 그러면 위와 같이 불상 모델이 보이실 겁니다.

 

5000 번 파일로 먼저 작업한 건 굳이 특별한 이유가 있는 건 아닙니다. 아무거나 딴거로 하셔도 됩니다. 하나만 수정하고 나머지는 그거 복사해서 쓰면 되거든요.

 

 

여기서 ImportModel 버튼을 누르셔서 교체하려는 모델 파일을 읽어와 줍니다. 그러면 확인창이 몇 번 뜨는데, YZ 축을 바꾸겠느냐 하고 뜨는 창이 있습니다. flver editor는 축 기준을 일반적인 3d 프로그램과 다르게 두는 건지 그냥 3d 파일을 읽어오면 뒤집혀서 나오는 경우가 있는데 그 때 저기서 예를 눌러주면 정면을 바라보는 모습으로 정상적으로 추가되기도 합니다. 리깅이 된 모델 파일을 읽어올 때는 저기서 예 해버리면 웨이트값이 꼬이는 문제가 있었는데, 그냥 단순 메시만 읽어오는 경우기 때문에 지금은 저기서 예 해주셔도 됩니다.

 

그냥 간단하게 다시 얘기하면 지금은 리깅 안 한 거니까 그냥 저기서는 예 하면 된다라고 보시면 됩니다.

 

 

 

그 다음 Mesh 를 눌러서 메시 창을 뛰웁니다. 여기서 index 값이 0인 애가 원래 있던 불상 모델, 1이 새로 추가한 모델입니다. 추가한 모델의 위치나 크기 등을 수정하려면 해당 모델만 체크한 상태로 값을 조정해서 수정해 주시면 됩니다.

 

 

새로 추가한 모델을 적당히 수정해줬으면 이제 원본 불상 모델을 지워야 합니다. delete 항목에 원본 모델을 체크 한 다음 Modify 눌러주시면 원본 모델을 삭제됩니다.

 

 

여기서 좀 골치아픈게 tpf 파일, 그러니까 텍스처 파일이 5000번 파일에는 없습니다. 나머지 두 파일에도 텍스처 파일이 없었습니다. 오브젝트 파일이 워낙에 많기 때문에 일일이 다 열어보고 찾을수가 없어서 그냥 텍스처 파일을 안에 포함시켜 넣는게 제일 쉬워서 그렇게 작업을 했습니다.

 

일단은 위와 같이 tpf 폴더를 생성합니다.

 

 

 

 

 

그 폴더 안에 먼저 위와 같은 xml 파일을 넣어놓습니다. 직접 타이핑하기는 좀 골치아프니까 다른 tpf 파일을 yabber로 언팩한 다음에 나오는 xml 파일을 복사해 오신 다음에 쓸모없는 내용 지우고 위와 같이 만드시는게 쉽습니다.

 

저 xml 파일은 yabber로 다시 압축할 때 어떤 파일을 포함시켜서 <filename>에 해당하는 파일을 생성할 지 정해주는 파일입니다. tex.dds 라는 텍스처 파일이 들어가는 o005000.tpf 파일을 생성하겠다는 의미입니다.

 

그리고 tex.dds 파일을 넣어놓습니다.

 

 

그리고 tpf 폴더를 yabber 위에 드래그 해주시면 저 폴더를 압축해서 tpf 파일을 생성합니다.

 

 

그러면 다시 flver editor로 돌아와서 Material 창을 열어줍니다. 여기서 M[ARSN] 을 눌러줍니다. 이건 새로 추가한 모델의 머티리얼을 M[ARSN]으로 바꿔주는 과정인데 이게 제일 기본 머티리얼이라서 쓰기 좋습니다. 머티리얼을 원하는 만큼 수정해서 쓰시려면 MTD Editor를 쓰셔야 하는데.. 이건 넘어갑시다. 그냥 M[ARSN] 쓰세요...

 

 

그 다음 새로 추가한 모델, 여기서는 토마스 기차에 해당하는 항목의 Edit 버튼을 누르면 텍스처 파일을 직접 지정할 수 있는 창이 뜹니다. 여기서 Browse를 눌러 앞서 tpf 파일에 추가했던 tex.dds를 지정해 줍니다.

 

그러면 tex.tif로 들어갈텐데 확장자는 아무 의미없습니다. 사실 확장자 빼고 tex라고만 입력해도 됩니다. 그냥 프롬의 게임 엔진은 뭔가 좀 이상해요ㅋ 저 flver editor가 이상한게 아니라 그냥 내부 데이터 자체가 tif로 들어가 있습니다. 왜 그런지는 모르겠네요.

 

참고로 머티리얼은 1개밖에 쓸 수 없습니다.

 

머티리얼을 여러개 쓰는 복잡한 모델을 추가한 경우, 텍스처를 다 집어넣고 게임을 실행하면 게임 상에서 텍스처가 제대로 나오지 않는 문제가 있었습니다. 텍스처 1개만 남기고 지우고 다시 테스트 하니 그 부분만은 제대로 나왔습니다.

 

 

텍스처 지정까지 끝낸 후에는 o005000_S 파일을 지우고 o005000 이걸 복사한 다음 o005000_S 로 바꿔줍니다. _S 파일은 LOD 용 모델 같은데 그냥 복사해서 파일명 바꿔 쓰시면 됩니다.

 

 

flver 작업을 다 끝냈으면 쭉 나와서 o005000-objbnd-dcx 폴더로 이동합니다. 거기 보면 xml 파일이 또 있습니다. 앞선 tpf 의 xml 파일은 tpf 파일에 어떤 파일이 들어갈지 결정해 주는 파일이었다면 여기 있는 xml 파일은 dcx 파일에 어떤 파일이 들어갈지 결정해 주는 파일입니다. 여기에는 tpf 파일 내용이 없기 때문에 위와 같이 추가해 줍니다.

 

 

그 다음에 저 폴더를 yabber 위에 드래그 해주시면 이제 수정이 다 된 dcx 파일이 생성됩니다.

 

 

 

5000번만 수정했기 때문에 5500 / 115040 얘네도 수정을 해줘야 합니다. 하지만 이 과정이 귀찮기 때문에 그냥 5500 / 115040 얘네를 지우고 5000을 복사해서 5500 / 115040 으로 이름을 바꿔줍니다.

 

사실 이렇게 하면 텍스처 파일이 중복으로 들어가는 문제가 있긴 하지만 작업이 귀찮으니까 그냥 이렇게 합니다. 용량 뭐 얼마 안 하잖아요.

 

세키로의 오브젝트 파일은 dcx 파일 이름만 가지고 읽어오기 때문에 dcx 파일 이름만 바꿔줘도 잘 동작합니다. 예를 들어 1000 번 파일이 보물 상자다, 그러면 이걸 5000 번으로 이름을 바꿔주면 다른 작업 하나도 안 해도 불상이 보물 상자 모양으로 변경 됩니다. 굳이 새로운 모델 추가 안하고 게임 내 다른 물체로 바꾸겠다 하시는 분들은 이런 식으로 이름만 바꿔주시면 됩니다.

 

 

 

이제 게임에 들어가서 바뀐거 확인하시면 됩니다.