[PAID job] MD5 exporter for Doom 3

I need working MD5 exporter and animated camera exporter for Doom 3. There is very good and robust MD5 exporter for Blender 2.49, but it doesn’t work with Blender 2.6x

What’s needed is to get that exporter, make it work with Blender 2.62 and 2.63+

Here is a mock up of the exporter’s GUI:

The workflow for exporting animated model is as following:

User selects rigged mesh (single surface / multisurface / several meshes) and armature. In the menu user selects File > Export > Doom 3 MD5 exporter and the above posted GUI shows up (with default settings as depicted).

User types in MD5mesh filename (.md5mesh extension will be added upon exporting), types in Action names as specified in the Action editor separating names with comas (Action name will serve as a filename and .md5anim extension will be added upon exporting). If there is no input in this field, the exporter shall export all available Actions.

If the model facing +Y (default to Blender) and Rotate model checkbox is on, the model will be rotated to face X+ axis as required by Doom 3. If the checkbox isn’t ticked the model will be exported as-is.

If there is no camera in the scene, Camera export checkbox should be unchecked (even if it’s checked, no camera file should be written).

If there is animated Camera in the scene and user wants to export it, (s)he should check the Camera checkbox and type in filename for the camera (extension will be added automatically upon exporting).

If user wishes to export only Camera and not the animated model, the checkbox Export Doom 3 model can be unchecked.

Technical details:

  • Filename in the Blender file browser overrides MD5Mesh name in the GUI’s input field (if no filename specified, MD5Mesh name input field will be used);
  • Existing files get overwritten if user used same filenames in the input field / browser window;
  • Upon exporting material name should be written as shader name into .md5mesh file;
  • Mesh (meshes) should be UV mapped and contain vertex group with names corresponding to deforming bones;
  • The framerate set in Blender should be written into .md5anim file;
  • Besides deforming bones, only bones in currently visible armature layers should be exported (deforming bones must be exported always);
  • Mesh can be single, multisurfaced or several separate meshes (as long as they are parented to armature and have vertex groups).
  • Only selected meshes and armature should be exported. Unselected objects should be ignored (especially true for custom shape bones).
  • Each animation suppose to be a separate Action
  • Animation length for each Action is determined either by frames where keys begin and end, or by the two markers placed for each Action, signifying beginning and end of the animation (presence of the markers overrides actual animation’s length).
  • If there is no input in the Actions field, the exporter shall export all available Actions.

Budget is $50 (I know it’s not a lot, but considering that the exporter exists, it’s way less work to get it ported to 2.63+ vs writing it from scratch).

E-mail me at motorsep at gmail . com if interested. Must have PayPal (or a way for me to pay you using PayPal). Thanks.

Is it Friday night or something else? (no one seems to be around) :slight_smile:

Dude, it’s been like four hours…

I knew you would show up :stuck_out_tongue:

As I stated in the thread’s title, I need MD5 (md5mesh, md5anim and animated camera output) for Doom 3. Thanks for reminding me about MD3 as I might offer paid job for MD3 exporter later :slight_smile:

NOTE: All these exporters exist, just need to be updated for 2.62 and 2.63+ with GUI and some small additions.

where are the exporters?

I provided one for you to fix and you never got back with me.

Which exporter are you trying to use? This one (http://www.katsbits.com/smforum/index.php?topic=167.0) implies that they have a version that supports (2.57, 2.60, 2.61, and 2.62).

There was awesome MD5 exporter for Blender 2.49, with solid GUI and solid workflow. No one ever ported it into 2.5x or 2.6x. Instead someone else created a new exporter with no GUI and unintuitive workflow. As I specified (garhhh, I mistyped 2.49 and put 2.59 instead, sorry; fixed now) that exporter needs to be brought back to life with some features added.

what about http://www.katsbits.com/tools/
anyone doing anything there?

2.49, I’m out then. :frowning: I started Blender with 2.5+ and I’m not really interested in figuring out the 2.49 API so it can be ported to 2.6+.

There is one arrogant dude who refuses to add any GUI and better workflow to his new exporter (refuses to work even for money). That’s why I am at the heart of development community asking for help and paying for it :wink:

Eeh, if you know Python and can code, there should be no issue with getting GUI from the old exporter and making it work with current Blender versions.

maybe thats me – and if not, i can understand that someone has no need to put a gui to an exporter. For example the one included in this blend-file (some postings above in this thread) still has the old gui for blender-2.61 in it. But the “register”-function is un-commented (unused) and if i would go to blender-2.63 to generate the bunch of md3-files, i never would use a gui … i like to start a script and end up with 40…50…60 md3-files ready to be packed into pk3 and not click thru hell for every single object – and some objects need multiple output, whether its a stand-alone weapon or used in an animation …

and more … for any payment … i have no paypal … that makes it easy, no one can put a “bait in front of my mouth with a fishing rod”.

btw. there was no answer what engine (or other goal) motorsep trys to use…

Going offtopic. As I said, if someone is interested - there is my e-mail or pm. No need to trash the thread.

I need GUI and workflow I used to have in 2.49 and I am willing to pay for it. That’s all. This is not a place to argue whether GUI should be there or not, because I need it, period.

One could hope! I’ve been a professional software developer for 15 year now. I don’t know the full details of what changed in the API between 2.49 and 2.5+ but I’ve seen enough 2.49 script fragments to know that it was a major overhaul. Unfortunately, that means it is almost certain that the 2.49 script’s current UI code is probably best used as as a blueprint for building an entirely new UI in 2.5+.

I wish I could help. If I knew the 2.49 APIs, I’d probably try to port this for free.

Well, would it be extremely hard to look at GUI of the old exporter and replicate it in 2.6x exporter (the look and the functionality)? It’s the the idea of being able to work nicely and smoothly and not export files one by one in an awkward way.

Wanting a nice UI with a good workflow is not crazy. Who the heck want’s to remember some arcane rules about which objects to click when and which text blocks to run in what order? The job is to get the models exported, not remember how to drive a script!

Unfortunately, getting the UI working is probably one of the bigger challenges. Even if there is an existing UI to follow it is a major effort to go see what each button does, figure out why it is doing it, and replicate that functionality in the new software.

I know this seems like a fairly easy problem to solve but this is just one of those deceptive things about software development that look easy but are hard to do. Fixing stuff like this is one of the reasons software developers can make $65k - $140k/year.

The crappy thing is that it might not be this hard. Since I don’t know the 2.49 APIs, I can only guess at what might be broken in them. Somebody that knows 2.49 and 2.5+ would be able to tell much more accurately how much of the original script can be salvaged.

How about this?

does the 2.59 script export meshes and animations correctly, beside wrong orientation?

porting to 2.62/2.63+ shouldn’t be a problem, and i guess keyframed camera export is easy to do.

Thanks for the idea about the mock up. I brainstormed new GUI (parts of which can be salvaged from 2.5x exporter) and provided the mock up in the first post. Also added the workflow and technical details. I hope that will help to determine feasibility of the project :slight_smile: