Hey guys,
I'm trying to figure out the workflow for exporting animations from Maya into DOTA 2!
So far I've read the DOTA Workshop Guidelines and resources here -
http://www.dota2.com/workshop/requirements/npcs
I wanted more information, so I followed the link from the workshop guidelines page to the Source Developer WIki and looked up exporting skeletal animation here -
https://developer.valvesoftware.com/wiki/Exporting_a_model, and that referred me to the .smd Exporter by Prall, however the link on the wiki was broken, so I went to google and searched for maya .smd exporter, and ended up here -
http://puppet-master.net/plugins/mesa-for-maya/
and followed their long installation tutorial here -
http://puppet-master.net/plugins/mesa-for-maya/installation/
However upon completion of this tutorial I was met with several errors when trying to export such as
// Error: file: C:/Mod_source/mesa/smdOptionWindow.mel line 295: setAttr: No object matches name: smdInfo.smdTarget
It's possible I did something wrong in the installation tutorial, but it seems like a lot of others have had problems with MESA as well from what I've found. And honestly I'm not even certain that Mesa will do what I need since this is all new to me. so my question is
What do you you guys use to export animations from maya into DOTA 2? Any help would be much appreciated! Thanks!
Replies
From there, you can just go into your standard 'File->Export Selection' with your skeleton selected and export as a 'Valve SMD Animation (.smd)'.
A word of warning, for me the export options don't work, if they do for you, disregard this. Depending on your Up-axis setting, this will export your animations flipped 90degrees, so what I do is this: Instead of going through the 'File->Export Selection', I go into the MEL input line and use this code:
This is just the manual input of what 'File->Export Selection' does but with the addition of the '-up z' string which flips my animation from Y-up (which I work in) to Z-up (which is what Source runs on).
Remember: This will only bake the frames that are in the currently active range.
This works for me, but the easiest way (if it works for you, doesn't for me) would be to just export as .FBX
I got of this comes from TVidotto so if it works credit goes to him ^^
it just mean there is a problem with the path in mesa smd option panel on path tab, at the line smd target.
did you clicked on the default button, first ? the path should be the same in parallel to the path of your scene, in the scene folder. (c:/mod_source/scenes/)
I understand the installation and the usage of mesa is a bit complexe, but it work like a charm and better that the plugins provided by valve.
//red
Honestly, you can save yourself the trouble of all of this and just export an .fbx and load it into the importer. With how much Valve added to the importer, there is no need to export .smds anymore. This was only really needed during the wild west days of the workshop. The only way I can see ever going back to that method is if what I needed to compile wasn't in the game. And at that point I'm just wasting my time since Valve doesn't even consider an item unless it's been uploaded in the importer.
Andrew you know Jurassic life, and most of npcs and weapons and items has been exported from mesa and work just fine.
//red
Edit : Archanex, you can contact me if you want i am the author of mesa.
Something is messed up with my fbx exporter when exporting animations to the point where it a) only exports sometimes b) doesn't export just the active range. But yeah, like I said in my earlier post, if fbx works, it's way way easier.
to me if you want to export in dmx, especially if you doing thing for SFM and you need to tweak your npcs with some python script.
if you create model of a mod under 2007 engine, you don't need dmx support, so smd is the format the most used in that case.
Spudnik > the easier way is the way you are fine with and you learn day after day by yourself, so it depend on the person thought and the process should be different.
Don't ask me how or why it works but it worked for me and I didn't bother questioning it at that point, haha.
AndrewHelenek - What importer are you referring to?
Spudnik - Luckily I am running 32 bit Maya2013, so that should have worked great! However I'm also running Windows XP, so what happened was when I went to run the runmaya_2013.bat file, I got an error saying that maya wasn't installed where it was expected to be, so I opened up the .bat file to and changed the path from "...Program Files(x86).." to "Program Files" saved it, and then I was able to launch at least, but I still don't have the option to export .smd from Maya
fuzzzzz - I think I did that, but I'll double check, if I still have issues I'll be in touch. Thanks so much!
I even tried sourcing "sfmValveSetup.mel" into Maya directly from \\Steam\SteamApps\common\SourceFilmmaker\game\sdktools\maya\scripts
but unfortunately I got this...
// Error: file: G:\Steam\SteamApps\common\SourceFilmmaker\game\sdktools\maya\scripts\sfmValveSetup.mel line 322: VALVe:: VCONTENT not set, run SFM Launcher to set up environment
How do I set VCONTENT? I ran SFM Launcher but I didn't see anywhere to setup an environment, please help!
This rabbit hole is getting pretty ridiculous! Thanks again for all of your replies! I may end up just using FBX, but I'd prefer to easily be able to export an SMD if I can get it setup properly. The problem with FBX is that you have to clean the file and strip out the rig so that it's just the skeleton and the mesh, I don't have an automated way to do this, so it's kind of a pain at the moment
if the plugin is not compiled for maya 2013, it just can't work .
too bad that valve do not share the plugin source code , i could be able to recompiled it with the maya sdk and for all 2012,2013, and 2014 x64 version, but... nevermind
also i am sure if you dig a bit more with mesa you will be capable to export in smd.
there is some help on my forum, or you can post on it and explain me exactly what you do in maya, the same thing for you Spudnik :poly121:
Vcontent is the folder in sfm/content/modname/
the environements variables are overwritten when you have the launcher open and you set a specific config, (idem with mesa) the env variable set in system level gets the priority.