Source Filmmaker

Source Filmmaker

Quick question!? .DMX vs .SMD, what's the difference?
I can export in both formats but I'm totally unclear what the difference is and which is better.
< >
Showing 1-7 of 7 comments
6000 ANGRY BEES Aug 22, 2014 @ 8:43am 
DMXes are a general purpose file container Valve uses in the modern versions of Source 1 for a lot of different purposes. The DMXes used in models are a direct replacement for the SMD format and support newer engine features like wrinklemaps and corrective shapes.

If you're not doing any crazy HWM stuff in your model, it doesn't really matter what format you use in the long run.
raptornx01 Aug 22, 2014 @ 9:28am 
One benefit to dmx I believe is that they negate the need for vtas for flexes. As I understand it the flexes would be included, instead of needing a separate vta file.
Pte Jack Aug 22, 2014 @ 7:24pm 
Except for the eyeball statement... You still have to include that for DMX files, I believe it is. (I've been away so long even I forget now!!!!)
Zappy Aug 22, 2014 @ 11:31pm 
Originally posted by Pte Jack:
Except for the eyeball statement... You still have to include that for DMX files, I believe it is. (I've been away so long even I forget now!!!!)
I compile pony models using my DMX bases. I still need to define $eyeball in the $model section of the QC. Same goes for Team Fortress 2 playermodel mods I make.

Anyways, advantages of DMX: Everything.
Disadvantages of DMX: Any single vertice can only be linked to 3 bones at most, even though the format can be saved with >3 weight links on a vertice, and SMD can have pretty much infinite weight links on a vertice. Why StudioMDL doesn't support >3 weight links on a vertice on DMX meshes when it does support it for SMD, I don't know. I really hope ResourceCompiler (Source 2 StudioMDL) supports that.

Advantages of SMD: It can have >3 weight links on a vertice.
Disadvantages of SMD: You can't use $scale with flexes (unless the flexes are scaled before compiling). $scale only affects SMDs and DMXes. Speaking of which, flexes are in separate VTA files. (Same files can also be used with DMX meshes, but I don't recommend it.)
-Each "part" of a model can only be one "object" in something like Blender, where-as with DMXes, different mesh parts can be linked to different "objects".
-You can only use flexes on $Model. That means no flexes on bodygroups.
Last edited by Zappy; Jun 16, 2018 @ 2:56pm
KZM Jun 16, 2018 @ 2:17pm 
Alright this is a super necro but the weight link thing on SMDs I just found out is misleading. A vertex can only have 3 weight links on it no matter what in Source, it's just that studiomdl will automatically remove the lowest-intensity links on SMD. Why it doesn't do this for DMX I have no idea. But in a nutshell, DMX is actually more accurate to the final compiled model.
Pte Jack Jun 16, 2018 @ 2:50pm 
Thanks for pointing that out in a thread that died 4 years ago.
Last edited by Pte Jack; Jun 16, 2018 @ 5:15pm
Marco Skoll Jun 16, 2018 @ 3:10pm 
Originally posted by Practical Problems:
Alright this is a super necro but the weight link thing on SMDs I just found out is misleading.
Yeah, it's something we eventually figured out that although the compiler will accept the SMD file, it doesn't mean that it's compiled with the weights.

That's one of the two main limitations of Source's weight painting - no more than three weight links per vertex.

The other one that the compiler doesn't tell you about and which is a phenomenal pain in the butt when trying to feather the edge of bone weights to still try and get smooth deformation within that weight link limit is that Source's compiler culls weight links of less than 5%.

(The good news, however, is that limit can be removed. While adding more weight links would break the model format, the model format is capable of supporting weak weight links just fine - it just takes a fairly simple crack to the compiler).
< >
Showing 1-7 of 7 comments
Per page: 1530 50

Date Posted: Aug 22, 2014 @ 8:22am
Posts: 7