Astute 19 Apr, 2013 @ 5:55pm
[SOLVED] SFM Exporting DMXs, compiling animations in Source
Well, where do I begin? I've been working on a new custom weapon that requires some world animations for the Spy. I've created my world animations in SFM, and I have exported them out with the correct timing to the DMX format(through SFM's export menu). However, when I attempt to compile the DMX that is exported(using studiomdl and the default spy_animations.qc), I get a variety of cryptic compiler errors. I've tried various compilers and source SDK versions, but I have made little progress.

An example output:
--------------------------------------
WARNING: Could not execute the command:
dmxconvert -allowdebug -i <long input filepath>\\sabo_idle.dmx -o <long output filepath>\\_
Windows gave the error message:
"The system cannot find the file specified."
WARNING: Unserialize: Unable to run conversion process "dmxconvert -allowdebug -i <long input filepath>\\sabo_idle.dmx -o <long output filepath>\\_"
ERROR: <some directory>\scripts\spy_movement.qci(8): - could not load file '<some directory>\scripts/../animations/dmx/sabo_idle'
ERROR: Aborted Processing on 'plaÞÞ˦}Y@yer/spy_animations.mdl'
ERROR: 'EXCEPTION_ACCESS_VIOLATION' (assert: 1)
--------------------------------------

NOTE: "<>" is just where I removed the extremely long filepaths

Based on that output, I can see that it attempted to convert my animation implicitly before compiling it, but ran into some kind of error. Then you get something like 'plaÞÞ˦}Y@yer/spy_animations.mdl', which leaves me.. I.. yeah, no idea there.
It is important to note that I can compile "spy_animations.qc" perfectly fine without my file included.


Moving on. I did some tests, attempting to load said DMX into Blender. Blender gives me a blank animation, and refuses to parse the file. Inspecting the DMX shows that it has a different version from the average DMX file used to compile "spy_animations.qc"

--------------------------------------
Your Average Spy DMX Header: <!-- dmx encoding binary 2 format model 1 -->
SFM's DMX Export Header: <!-- dmx encoding keyvalues2 1 format model 18 -->
--------------------------------------

From what it seems, the versioning of the file is different, with SFM being more recent. Of course, the Valve Developer wiki points this out as well. I attempted to explicitly back-version my DMX by using the tool "DMXConvert", found in the SFM bin directory. This only yielded another DMX of a different format, but still the same version "model 18". Web search after search yields very little, mostly outdated docs and very few forum threads mentioning unrelated errors.


So now I'm at wits end. To all of the Source SDK guru's out there, I ask. Have I just been running around in circles here? Is there some magic button I'm missing, or perhaps a flag on studiomdl I'm not passing? I find it hard to believe that Valve released a version of DMX that isn't supported by their other tools.

---Short Version---
1.Exporting DMX animation from SFM for the spy.
2.Attemping to compile into TF2.
3.Cannot compile with studiomdl.
4.Cannot import into Blender.
5.Cannot back-version with DMXConvert or studiomdl.
Appears to be a versioning issue?

Thanks for listening.
Last edited by Astute; 23 Apr, 2013 @ 3:47pm
< >
Showing 1-1 of 1 comments
Astute 23 Apr, 2013 @ 3:47pm 
I did a couple more tests, mostly just breaking the animation down to its fundamental parts. I found that it was a versioning issue after all. However, the export for Taunt Animations is the correct DMX version for other source tools, and can be utilized for regular looping animations. I can't import these into Blender, but I'm able to compile them just fine.

I suspect Export Animation was intended for saving SFM-only animations, and was not for other source tools. Export Taunt Animation is a bit of a misnomer, as it's just a fancy export for a basic DMX animation.
< >
Showing 1-1 of 1 comments
Per page: 1530 50