Home Dota 2

What do you guys use to export animations from maya to Dota 2?

polycounter lvl 18
Offline / Send Message
Archanex polycounter lvl 18
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

  • Spudnik
    Offline / Send Message
    Spudnik polycounter lvl 11
    If you are using/have access to the 32bit version of Maya, you can just use the tools that Valve ships with the Source Film Maker. If you go into
    C:\Program Files (x86)\Steam\steamapps\common\SourceFilmmaker\game\sdktools\maya\
    
    you'll find a "runmaya_2012.bat", double click that and it'll run Maya with all the plugins set up.

    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:
    vstSmdIO -export -exportType skeletalAnimation -selection -up z -filename "vstSmdIO -export -exportType skeletalAnimation -selection -up z -filename "C:/.../filename.smd"
    

    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 ^^
  • Paskie
    This info should be in a sticky for dota 2 animations somewhere :) I bet a lot of people could use this information.
  • fuzzzzzz
    Offline / Send Message
    fuzzzzzz polycounter lvl 5
    Archanex wrote: »
    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!

    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
  • AndrewHelenek
    Offline / Send Message
    AndrewHelenek polycounter lvl 6
    Archanex wrote: »
    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!

    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.
  • fuzzzzzz
    Offline / Send Message
    fuzzzzzz polycounter lvl 5
    if you only work for none animated items, you can only use the obj exporter. but if you need to create bone and use $bonemerge to merge this bone on the npc model skeleton, you only passing by the QC, I know you can define a bone in the qc.
    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.
  • Spudnik
    Offline / Send Message
    Spudnik polycounter lvl 11
    @Helenek
    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.
  • fuzzzzzz
    Offline / Send Message
    fuzzzzzz polycounter lvl 5
    why using smd instead of DMX or obj ? obj is use for item, dmx is supported by recent branch of the source engine.
    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.
  • Spudnik
    Offline / Send Message
    Spudnik polycounter lvl 11
    fuzzzzzz wrote: »
    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.
    Yup, that was my point ^^
  • BrontoThunder
    Offline / Send Message
    BrontoThunder polycounter lvl 13
    I was hitting my head against a wall trying to get animations work for the ward Robo and I worked on. What ended up working for me was exporting the animation file as a DAE_FBX file, opening up a fresh scene and importing that DAE_FBX file and then exporting it as an FBX.

    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.
  • Spudnik
    Offline / Send Message
    Spudnik polycounter lvl 11
    Yeah, that's the exact situation I'm in too ^^ Don't question it, just be happy it works in a semi-easy way :D
  • Archanex
    Offline / Send Message
    Archanex polycounter lvl 18
    Thanks so much for your replies everyone!
    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.

    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
  • fuzzzzzz
    Offline / Send Message
    fuzzzzzz polycounter lvl 5
    Archanex > the plugin that valve provide must is the 2012 version,right ?
    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.
Sign In or Register to comment.