READ THE RULES: Click here

Follow us on Facebook: https://www.facebook.com/xentax/ :)

Splinter Cell 1 - Meshfile extracted :)

Post questions about game models here, or help out others!
Post Reply
User avatar
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Splinter Cell 1 - Meshfile extracted :)

Post by pivke » Sun May 18, 2014 11:42 am

Hey,

for the last days I finally extracted the archive-files from Unreal Engine 1 (Splinter Cell 1). Now I'm able to look on every single Meshfile. For example this:
Image

But I'm not getting that format. You can clearly see the data in this pattern: Floats, Indices, Floats (maybe VBO, Faces, UV's). But I'm unable to find any information to Vertex-Count or Index-Count.

Maybe someone see's something, I can't see.

I've attached two files: Normal meshfile and collision file (as I think it is). Thank you very much in forefield!

pivke

EDIT: Get demo here: http://www.fileplanet.com/118136/110000 ... l-Demo-[PC] (Url won't work)
You do not have the required permissions to view the files attached to this post.

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2728
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 674 times
Been thanked: 1405 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by shakotay2 » Sun May 18, 2014 5:12 pm

pivke wrote:But I'm unable to find any information to Vertex-Count or Index-Count.
Me, too. For some formats they aren't contained in the model file. Using hex2obj (view link in my sig) you only need to calculate/estimate the face indices count - the resulting vertex count is shown in the lower left list box then (hidden by the model atm):
Vitrine.JPG
Vitrine_CIA.mesh, UV pos might be 24.
There's another vector block 42 * x,y,z at 0x100E building a square point cloud.
(The 214 face indices starting at 0xC34 (max face index=88) won't fit here.)
You do not have the required permissions to view the files attached to this post.
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

User avatar
chrrox
Moderator
Posts: 2541
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1269 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by chrrox » Sun May 18, 2014 6:20 pm

in Vitrine_CIA.mesh
The vertex count is
58 01
the 58 is the vertex count
then the first face count
02 00 00 00 7E 01
is 7E

User avatar
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by pivke » Sun May 18, 2014 7:56 pm

Hey,

thanks to you guys! Awesome with that results you are coming with. :)

@chrrox
My first question: How did you notice that? I've sawn a pattern of floats, too, but I didn't get to find the start of that float-block.

But; Are you sure these values are the counts? I mean, when I'm looking at them, it seems legit, but the block of floats is much larger than the vertexcount. Even if you multiplicate 0x5801 with 3 or 4. What do you think about that?

User avatar
chrrox
Moderator
Posts: 2541
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1269 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by chrrox » Sun May 18, 2014 10:48 pm

the vertex size is 0x20
just look at the size.
so multiply that value * 0x20

User avatar
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by pivke » Mon May 19, 2014 4:44 pm

Hey,

thanks for your answer! I'm a bit confused for now.

So, 1) What do you mean by vertex size and 2) Where do you see 0x20?

User avatar
chrrox
Moderator
Posts: 2541
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1269 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by chrrox » Mon May 19, 2014 6:36 pm

0x20 is hex for 32 bytes.
vertex size is also called vertex stride.
its the length each vertex point takes up.
Example for 32 byte stride
12 bytes vertex position
12 bytes normal
8 bytes uv's
total would be 32
12 + 12 = 24
24 + 8 is 32
32 is 0x20 in hex

User avatar
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Re: Splinter Cell 1 - Meshfile extracted :)

Post by pivke » Fri Jun 06, 2014 5:46 pm

Ok, so after some time: (In reference to CIA_Vitrine.msh)
-There is always a 42 byte-header.
-After that 42 byte-header starts the VertexCount (short, 2 byte)
-After that VertexCount, there follows the VBO (vertex-stride seems not to be 0x20, because on different files, the VBO would be too long or too short)
-When skipping a few byte after VBO, there comes FaceCount and FaceIndices (At FaceIndices same as above)

So again, someone able to crack this weird stuff? "chroxx" just made a great start.

Thanks so far! :)

(If you guys need another file just say it (: )

Post Reply