xmx 3D files Sega GT 2002

Post questions about game models here, or help out others!
User avatar
KarinFutoGT
advanced
Posts: 54
Joined: Fri Apr 06, 2012 6:04 pm
Location: SPAIN
Has thanked: 51 times
Been thanked: 6 times
Contact:

xmx 3D files Sega GT 2002

Post by KarinFutoGT » Sun Jun 01, 2014 3:43 pm

Hello guys i've been looking 1 year ago how to extract the sega gt '02, I got it at the end but there are files with extension .xmx I looked a lot of pages at google without luck, someone know if exits a tool/program to open or convert to other format like .obj? I guess not [bruce]

Here is a 3D with .xmx format
You do not have the required permissions to view the files attached to this post.

TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Re: xmx 3D files Sega GT 2002

Post by TomWin » Mon Jun 02, 2014 4:50 am

Oh man this game has some cool models. I always wanted jottio caspita can u upload it to? Sorry I don't have coding skills

Guerra8888
ultra-n00b
Posts: 4
Joined: Sun Jun 06, 2010 3:47 am
Has thanked: 4 times

Re: xmx 3D files Sega GT 2002

Post by Guerra8888 » Wed Jun 04, 2014 2:51 pm

nice cars... very interesting

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

Re: xmx 3D files Sega GT 2002

Post by pivke » Thu Jun 05, 2014 12:05 am

Shouldn't be too difficult to crack this format up and convert it to OBJ. In the file, there are sections like Material, Vertex, Index-List etc. You can even clearly see the vertex-coordinates and indices. But for now I'm unable to find anything about offset's or size's. Do you have a smaller file?

EDIT://
As it seems, these files aren't standalone-files. It looks like each file has a reference file. Can't find any information about vertex-stride, vertex-count etc. As I already requested; Can you provide a smaller file? Huge files are always more difficult to reverse...

Guerra8888
ultra-n00b
Posts: 4
Joined: Sun Jun 06, 2010 3:47 am
Has thanked: 4 times

Re: xmx 3D files Sega GT 2002

Post by Guerra8888 » Fri Jun 06, 2014 10:50 pm

would be great to see these models
:wink:

User avatar
KarinFutoGT
advanced
Posts: 54
Joined: Fri Apr 06, 2012 6:04 pm
Location: SPAIN
Has thanked: 51 times
Been thanked: 6 times
Contact:

Re: xmx 3D files Sega GT 2002

Post by KarinFutoGT » Sat Jun 07, 2014 4:09 pm

Here is a small .xmx, i guess is the fan from showroom
You do not have the required permissions to view the files attached to this post.

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

Re: xmx 3D files Sega GT 2002

Post by shakotay2 » Sat Jun 07, 2014 6:51 pm

using hex2obj (view link in my sig):
dom_zero_01a_body.JPG
(There seem to be superfluous faces inside the chassis when viewing the obj in blender for example.)

There are 18 assumed starts of face indices blocks (0000 0100 0200...) after 0x2E9E8. Didn't check them.
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
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Re: xmx 3D files Sega GT 2002

Post by pivke » Sat Jun 07, 2014 9:23 pm

car.png
So, I have some good news for you.

Code: Select all

XMX-Files
==============================
Byte { 16 } - Header
{
     Byte { 8 } - File Identification ("LDMXXOBX") -> "XboxModel"
     Dword { 4 } - Number Of Sections (see below)
     Dword { 4 } - File Size - 16 byte (Header Size)
}

Byte { x } - Section
{
     Byte { 4 } - Section Name
     if Section Name  == "LEDM" -> "Model"
        then
        {
             Byte { 41 } - Unknown
             Dword { 4 } - Vertex Count (see below)
        }
      Byte { x } - Unknown
}

To get the vertices, just read the next bytes till there comes "XTRV" ("Vertex"). When you reached this section, the data is:
Byte { x } - Section
{
     Byte { 4 } - Section Name
     if Section Name  == "XTRV" -> "Vertex"
        then
        {
             Float { 4 } - Vertex X
             Float { 4 } - Vertex Y
             Float { 4 } - Vertex Z
             Float { 4 } - Unknown

             Float { 4 } - UV X
             Float { 4 } - UV Y
        }
}
There are other sections like "RTAM" -> "Material" or "MNXTVPRG" -> "GroupVertex". I think it's obvious what they are describing.
After the "XTRV"-Section, immadiately the "XDNI" -> "Index" starts. That section starts as any section too with it's "Section Name" ( Byte { 4 } ).

(legend: "->" (without quotes) means "could mean")
==============================

So, thats what I found so far. As it looks, the UV in the VBO starts somewhere around the 16th byte. As for now, I was not able to find any information about the Face count. The "MNXTVPRG" should be analyzed a bit deeper that I did. When somebody is able to find some more relevant information like offset to VBO and/or Facecount, I'm ready to write a small application to convert this to the obj-format. But anyway, it is going to be hard to convert the models back to .xmx...
You do not have the required permissions to view the files attached to this post.

User avatar
KarinFutoGT
advanced
Posts: 54
Joined: Fri Apr 06, 2012 6:04 pm
Location: SPAIN
Has thanked: 51 times
Been thanked: 6 times
Contact:

Re: xmx 3D files Sega GT 2002

Post by KarinFutoGT » Sun Jun 08, 2014 2:50 am

Are very good news for me, not know nothing about programming but this is really great, no want to return to .xmx just edit the 3D :keke:
Thanks for your time :]

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

Re: xmx 3D files Sega GT 2002

Post by shakotay2 » Sun Jun 08, 2014 9:26 am

Code: Select all

Offset   0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F

010D0   02 00 00 00 00 00 00 00  4D 4E 58 54 56 50 52 47   ........MNXTVPRG
010E0   8C 01 00 00 00 00 00 00 >66 0C 00 00 00 00 00 00  -- vertex count
010F0  >2C 16 00 00 00 00 00 00  00 00 00 00 00 00 00 00  -- face indices count
vertex count is 0xC66 = 3174 , face indices count is 0x162C = 5676 -> 1892 faces

Not sure about the face indices count. as from the list it should be 5772.
edit: pivke seems to be right, 162C looks like an offset

There's another chassis at 0x13FFC but I got a point cloud only because I don't know which face indices belonging to it. Same goes for 0x2698C, but there are 1369 vertices only.
(You can increase the point's size by pressing 'p' in hex2obj. shift-p to decrease)
Last edited by shakotay2 on Sun Jun 08, 2014 2:17 pm, edited 1 time in total.
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
pivke
advanced
Posts: 41
Joined: Tue Jun 26, 2012 9:53 am
Been thanked: 8 times

Re: xmx 3D files Sega GT 2002

Post by pivke » Sun Jun 08, 2014 12:43 pm

Hey shakotay2,

nice, you've did some research of the Groups. We quite get more far :)

So, I've looked at your results, but I think the structure has some other order. What do you think about this:


MNXTVPRG8C01000000000000660C0000000000002C16

MNXTVPRG = "GroupVertex" (obvious)
8C01000000000000 = Unknown
660C = Vertex Count for this group (0x0C66 = 3174 vertices of 7719 total vertices)
000000000000 = Unknown
2C16 = Offset to VERTEX-section (0x162C = Begin-Of-"XTRV"-Section -= 16 byte) (Those 16 byte could be some general information about vertices, maybe flags?!)

I think what I wrote above is quite right. Because everything starts making sense for now. So the "MODEL"-section keeps things like total Total-Vertex-Count and Total-Face-Count, just as the section ID says. And the "GROUPVERTEX"-section is like grouping in *.obj-files.

So what we have to do for now, is checking the "GROUPVERTEX"-section for counts, and offsets. And check if the offsets are "array"-offsets or "byte"-offsets.

Keep up the good work, the circle about this formats is gonna be closing :)

Karpati
mega-veteran
mega-veteran
Posts: 303
Joined: Thu Dec 07, 2006 11:25 pm
Has thanked: 7 times
Been thanked: 58 times

Re: xmx 3D files Sega GT 2002

Post by Karpati » Tue Jun 10, 2014 8:41 pm

KarinFutoGT,

I finished the hacking of the .xmx format. Here I attached the converted .obj/mtl files to check out the result.
Next day I will upload an application and you can see your .xmx object directly without any tricks.
If you will confirm that works correctly, I will share the missing information.

(I must shut down my PC now...)
You do not have the required permissions to view the files attached to this post.
Last edited by Karpati on Wed Jun 11, 2014 8:06 pm, edited 1 time in total.

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

Re: xmx 3D files Sega GT 2002

Post by pivke » Tue Jun 10, 2014 9:40 pm

@Karpati
Cool, good work! Could you share your research with us? Would be interesting :)

User avatar
KarinFutoGT
advanced
Posts: 54
Joined: Fri Apr 06, 2012 6:04 pm
Location: SPAIN
Has thanked: 51 times
Been thanked: 6 times
Contact:

Re: xmx 3D files Sega GT 2002

Post by KarinFutoGT » Wed Jun 11, 2014 7:11 am

Thanks for all just tried right now and uv works correctly Image :lol: :lol:

TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Re: xmx 3D files Sega GT 2002

Post by TomWin » Wed Jun 11, 2014 1:30 pm

Please could you upload more models? Jottio Caspita

Post Reply