Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Sunset Overdrive (.model) Models

Post questions about game models here, or help out others!
Post Reply
TheLacy
ultra-n00b
Posts: 3
Joined: Mon Sep 28, 2020 8:39 pm
Has thanked: 1 time
Been thanked: 1 time

Sunset Overdrive (.model) Models

Post by TheLacy »

Hello, I just extracted some models from Sunset Overdrive with UnArch Tool(viewtopic.php?f=33&t=22779), and since I am not too good with reading 3D model formats I can't manage to open it. Can someone help me with it?
Sample files:http://www.mediafire.com/file/vozje1u3c ... s.rar/file
homelesskodai
ultra-n00b
Posts: 4
Joined: Fri Jul 10, 2020 10:33 pm
Been thanked: 1 time

Re: Sunset Overdrive (.model) Models

Post by homelesskodai »

do you still have the files, and also what UnArch tool did you use?
homelesskodai
ultra-n00b
Posts: 4
Joined: Fri Jul 10, 2020 10:33 pm
Been thanked: 1 time

Re: Sunset Overdrive (.model) Models

Post by homelesskodai »

bruh
wiredpeach
ultra-n00b
Posts: 3
Joined: Mon Mar 15, 2021 9:14 pm
Has thanked: 1 time

Re: Sunset Overdrive (.model) Models

Post by wiredpeach »

homelesskodai wrote: Tue Apr 13, 2021 1:08 ambruh
hello,

i'm also trying to convert a SOPC .model file to .obj. i managed to decompress the file archive using a tool for ratchet and clank ps4, it's been a while so i don't remember exactly which script i used to extract the files using the layout.csv, but i do remember that the .model to .obj script on the github not working (https://github.com/doesthisusername/ig-tools)

i have all the .model files, here are a few examples: https://mega.nz/folder/DgQV3AgB#oVq1UI-2RbcQra1F3iJS2A
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4291
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1151 times
Been thanked: 2244 times

Re: Sunset Overdrive (.model) Models

Post by shakotay2 »

wiredpeach wrote: Sun May 30, 2021 10:23 pm but i do remember that the .model to .obj script on the github not working (https://github.com/doesthisusername/ig-tools)
Hello,
who said it's a .model to .obj converter? Looks like a decompressor:

Code: Select all

a_body
spine
spine_B
chest
LF_clavicle
RT_clavicle
LF_uparm
RT_uparm
LF_loarm
RT_loarm
LF_loarmTwist_B
LF_loarmTwist_A
LF_loarmTwist
LF_wrist
RT_loarmTwist_B
RT_loarmTwist_A
RT_loarmTwist
RT_wrist
LF_wrist_scale
RT_wrist_scale
LF_finger_D_A
LF_finger_C_A
LF_finger_B_A
LF_finger_A_A
LF_thumb_A
RT_finger_D_A
RT_finger_C_A
RT_finger_B_A
RT_finger_A_A
RT_thumb_A
LF_finger_D_B
LF_finger_C_B
LF_finger_B_B
LF_finger_A_B
LF_thumb_B
RT_finger_D_B
RT_finger_C_B
RT_finger_B_B
RT_finger_A_B
RT_thumb_B
LF_finger_D_C
LF_finger_C_C
LF_finger_B_C
LF_finger_A_C
LF_thumb_C
RT_finger_D_C
RT_finger_C_C
RT_finger_B_C
RT_finger_A_C
RT_thumb_C
LF_finger_D_D
LF_finger_C_D
LF_finger_B_D
LF_finger_A_D
RT_finger_D_D
RT_finger_C_D
RT_finger_B_D
RT_finger_A_D
Uncompressed data seems to contain hkx data: 57E0E057 10C0C01000 ...
Version: hk_2013.2.0-r1

hktcnv test.hkx test.smd
HKX2SMD Converter v1.00 - Init


Read bytes:76856
sig is: 0x57E0E057
Version:hk_2013.2.0-r1
section:__classnames__
section:ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ__types__
section:ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ__data__
Class ÿÿÿÿÿÿÿÿÿÿÿ?#Ô3 hkClass signature: 0xFFFFFFFF
Class hkClassMember signature: 0xB0EFA719
Class hkClassEnum signature: 0x8A3609CF
Class hkClassEnumItem signature: 0xCE6F8A6C
Class hkRootLevelContainer signature: 0x2772C11E

Unhandled Exception: System.OverflowException: Arithmetic operation resulted in
an overflow.

(Maybe hktcnv expects another file, dunno, it's too long ago that I cared for hkx...)
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
wiredpeach
ultra-n00b
Posts: 3
Joined: Mon Mar 15, 2021 9:14 pm
Has thanked: 1 time

Re: Sunset Overdrive (.model) Models

Post by wiredpeach »

shakotay2 wrote: Sun May 30, 2021 11:51 pm Hello,
who said it's a .model to .obj converter? Looks like a decompressor:
oh god! sorry, i'm very new to the world of reverse engineering and thought the ig_model2obj.py was a converter :oops:
thank you for taking a look at the files, i'll read up on the .hkx format.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4291
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1151 times
Been thanked: 2244 times

Re: Sunset Overdrive (.model) Models

Post by shakotay2 »

wiredpeach wrote: Mon May 31, 2021 12:38 amand thought the ig_model2obj.py was a converter :oops:
thank you for taking a look at the files, i'll read up on the .hkx format.
All's fine, as the name tells ig_model2obj.py seems to be a model convertor. :) (I was talking about itg.c and dec.c.)

I assume you have to use ig_model2obj.py on the decompressed file.

Well, see README.md in general folder:
#### ig_model2obj.py
Attempts to create a `.obj` file from a decompressed `.model`. Rarely works properly, but some files are compatible.
Seems the python part is not too handy, you need to rebuild igdat1.py before using ig_model2obj.py:
# This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
wiredpeach
ultra-n00b
Posts: 3
Joined: Mon Mar 15, 2021 9:14 pm
Has thanked: 1 time

Re: Sunset Overdrive (.model) Models

Post by wiredpeach »

shakotay2 wrote: Mon May 31, 2021 8:29 am
wiredpeach wrote: Mon May 31, 2021 12:38 amand thought the ig_model2obj.py was a converter :oops:
thank you for taking a look at the files, i'll read up on the .hkx format.
All's fine, as the name tells ig_model2obj.py seems to be a model convertor. :) (I was talking about itg.c and dec.c.)

I assume you have to use ig_model2obj.py on the decompressed file.

Well, see README.md in general folder:
#### ig_model2obj.py
Attempts to create a `.obj` file from a decompressed `.model`. Rarely works properly, but some files are compatible.
Seems the python part is not too handy, you need to rebuild igdat1.py before using ig_model2obj.py:
# This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild
i now have a decompressed .model file (https://mega.nz/file/vsA0GD5I#LQU2nu_6O ... -iiUbDY8Hk) and i think i may be able to use the ig_model2obj script to convert it to an .obj, i'm completely new to python so i'll have to read up on rebuilding .py and .ksy files. thank you again for your time :keke:
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4291
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1151 times
Been thanked: 2244 times

Re: Sunset Overdrive (.model) Models

Post by shakotay2 »

wiredpeach wrote: Tue Jun 01, 2021 8:02 pmi now have a decompressed .model file (https://mega.nz/file/vsA0GD5I#LQU2nu_6O ... -iiUbDY8Hk) and i think i may be able to use the ig_model2obj script to convert it to an .obj
Just in case that doesn't work (correctly) another approach would be with .hkx, in that .model file delete the bytes before offset 0x6D0 and save as hfh_hed_pale_02_dec.hkx. Having the suiting havok tools for version hk_2013.2.0-r1 this might be the more "elegant" way.

(But as you may have noticed, hkx is a weird format because of its variety, similar to nif. Game developers add some "user defined" sections and all tools/scripts we have go bogus. :D )

What usually helps is hex2obj (or similar tools):
.
hfh_hed_pale_02_dec_point_cloud.png
(Face indices are a little bit harder to track. Part of eyeballs only.)
You do not have the required permissions to view the files attached to this post.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
User avatar
reh
veteran
Posts: 102
Joined: Mon Nov 16, 2015 11:18 pm
Has thanked: 58 times
Been thanked: 92 times

Re: Sunset Overdrive (.model) Models

Post by reh »

Faces are triangles and start at 0x9C0.
UVs are Half-Float
hfh_hed_pale_02_dec.model.png
You do not have the required permissions to view the files attached to this post.
User avatar
DKDave
ultra-veteran
ultra-veteran
Posts: 357
Joined: Mon May 06, 2019 6:07 pm
Location: On board the USS Callister
Has thanked: 9 times
Been thanked: 167 times

Re: Sunset Overdrive (.model) Models

Post by DKDave »

The table at 0x8c0 gives you the offsets for the vertices and faces for each sub-mesh. Each entry is 0x40 bytes, geometry info is at offset 0x10 in each entry:

Start Vertex (UInt)
Start Face (UInt)
Face Count (UInt)
Vertex Count (UShort)

Seems to work ok for that file, but that's the only file I have, so it may not work for others if developers keep messing with the format.

So you get this for the 4 sub-meshes in that file:

Image
I see a vision rising, dreary, Fading in as children play twilight games, In the town called Ordinary, An eye of light reveals a gateway to doomsday
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4291
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1151 times
Been thanked: 2244 times

Re: Sunset Overdrive (.model) Models

Post by shakotay2 »

reh wrote: Wed Jun 02, 2021 12:55 am Faces are triangles and start at 0x9C0.
yeah! Thanks, seems I'm always a little bit "off track". [roll]
.
eyeballs.png
You do not have the required permissions to view the files attached to this post.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
User avatar
reh
veteran
Posts: 102
Joined: Mon Nov 16, 2015 11:18 pm
Has thanked: 58 times
Been thanked: 92 times

Re: Sunset Overdrive (.model) Models

Post by reh »

There is a maxscript for 3dsMax written by sleepyzay for the Ratchet and Clank PS4 game, apparently it works with these files:
hfh_hed_pale_02.model.png
The script can be found on the xentax discord server.
You do not have the required permissions to view the files attached to this post.
Post Reply