Author Topic: Other games besides KOTOR & NWN  (Read 735 times)

Legacy_ZugothNDeadly

  • Full Member
  • ***
  • Posts: 174
  • Karma: +0/-0
Other games besides KOTOR & NWN
« on: January 03, 2016, 06:03:15 pm »


               

I'm curious as to what other games use the mdl model format besides KOTOR and NWN?



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #1 on: January 03, 2016, 06:51:03 pm »


               

Just guessing, but I'd say Witcher 1



               
               

               
            

Legacy_OldTimeRadio

  • Hero Member
  • *****
  • Posts: 2307
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #2 on: January 03, 2016, 09:13:41 pm »


               

With a bit of variation, I believe the basic ASCII MDL code is also shared in KotOR 2 and Jade Empire.  Dr. McCoy's Xoreos project recently cracked through into Jade Empire models, something I don't believe had happened previously.



               
               

               
            

Legacy_Jedijax

  • Hero Member
  • *****
  • Posts: 692
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #3 on: January 04, 2016, 05:07:10 am »


               

Hmmm... I thought all games worked the same way. At least, I would think Bioware games do so, no? What about Dragon Age and Mass Effect?




               
               

               
            

Legacy_Proleric

  • Hero Member
  • *****
  • Posts: 1750
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #4 on: January 04, 2016, 09:28:43 am »


               Dragon Age models are an entirely different format.
               
               

               
            

Legacy_DrMcCoy

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #5 on: January 04, 2016, 06:31:22 pm »


               

There's three different model "families" out there for the BioWare Aurora-type games [1].


 


There's the NWN family, with NWN, KotOR/KotOR2, Jade Empire and The Witcher. They each are obviously descendants of each other, built using similar concepts and structures. However, NWN's animations are mostly node based (the geometry stays the same, and only the position and orientation changes [2]), while the later games use bone/skin animations (the vertices of the individual meshes change too, following one or several nodes (bones) with certain weights).


 


KotOR and KotOR2 models are nearly identical, with only some minor differences. Jade Empire is similar to KotOR, but differs more. Similarily, The Witcher's models extends on NWN's, adding new features like LOD nodes and shader materials.


 


All of these games still have readers for the ASCII versions in their binaries, too [3]. Very helpful for figuring the format out '<img'>.


 


The second family is NWN2. It's structured completely different, and reads more like an IFF file [4], with the 4-byte packet ID and size field. No animations specified there, as NWN2 uses Granny and FaceFX for body and facial animations, respectively.


 


The third family is the format used in Dragon Age: Origins and Dragon Age II. GFF4/XML-based, and again structured very differently from the other families. The DAO and DA2 formats themselves are very similar to each other, with the main difference being that the latter moved to using GFF4 instead of XML (for performance reasons, I guess) for materials.


 


As for Mass Effect, I'd assume they use formats more native to Unreal Engine 3. But I have no clue.


 


 


[1] Four, if you count the NSBMD format that's used in Sonic Chronicles. That's a native Nintendo DS format, though, also used in other non-BioWare NDS games


[2] Meshes can also be completely swapped, and the dangly/jiggly meshes do change vertex positions


[3] The NWN ASCII MDL format seems to have been based on the Wavefront OBJ format, it seems?


[4] In fact, I wouldn't be surprised if it was based on some other, existing model format. If anybody knows more about this, I'd be interested



               
               

               
            

Legacy_OldTimeRadio

  • Hero Member
  • *****
  • Posts: 2307
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #6 on: January 04, 2016, 09:26:27 pm »


               

Based on what tools and formats were available to them at the time, I think the original MDL format is based on 3ds Max's ASCII Scene Export ".ASE" format.  The notes included in the original Bioware 3DS Max Export scripts code give the impression that the MDL format (and even some aspects of the engine, like the LookAt controller for head movement) are based around emulating what they could do in Max at the time.


 


There are various other clues.  Here's a simple textured box in .ase format.  Though this file is in a newer version of the format, view it in Notepad and you can immediately see the similarities.  If the box had been untextured, the ASE exporter would have also included the "WIREFRAME_COLOR" (i.e. wirecolor) of the model.  There are even stronger clues but they can be very obscure.  For instance, the "colors" setting in the ASCII model format (I can't recall if it's even used at the moment, but it exists in the ASCII and binary model formats and in omexport.ms in the Bioware export scripts) references a very specific kind of "color vertex" which only existed in 3DS Max and was used to fake a second material channel.



               
               

               
            

Legacy_DrMcCoy

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #7 on: January 04, 2016, 09:33:18 pm »


               

Oooh, interesting find! '<img'>



               
               

               
            

Legacy_PLUSH HYENA of DOOM

  • Hero Member
  • *****
  • Posts: 995
  • Karma: +0/-0
Other games besides KOTOR & NWN
« Reply #8 on: January 05, 2016, 07:54:37 am »


               

I've come across the "colors" data - very occasionally - when looking through ASCII Models and though it was clearly linked to verts I never could figure out exactly what the hell it was for or why it turned up in, like, one model in a thousand...


 


Interesting... though I have never been able to provoke it into actually DOING anything, nor seen any difference in a Model whatsoever after it was stripped out.