Maya to md5

collada has really failed my horriblly, so im finally switching to MD5 now. i really wanna get some info before i tell artists to start learning and exporting md5, so plz drop a few lines here. thx



has anyone tried maya to md5 and successfully loaded models and animations into jme using MD5Reader2?



what maya exporters r u using? any problems and what r the solutions?



many thx

I never tried Maya exporters, but I know that included in the ID Tech SDK there is the official exporter. Furthermore in the ID Tech SDK support page there are linked a number of importers and exporters for other programs, and, if I remember correctly, also some non official Maya exporters.



Though, beyond the exporters there are some things to take in consideration when modelling objects for MD5.


  1. MD5 joints do not store scaling transformations. Some time ago another jME forum user posted a trouble model with unwanted scaling casued by erroneous stretching of its bones.


  2. It would be better if you can verify that the sum of all the weights influencing a single vertex returns 1 as result. I hope that there is any automatic way to do it in Maya.


  3. There should be no more than 1 root bone (bones without any parent bone). We noticed that having more than 1 root bone gives a lot of problems (you can find a big number of threads in this board that finally leads to that issue). So, parent your skeleton hierarchy to a single bone that you can call "origin", like the one in the marine.md5mesh original model.


  4. MD5 Reader 2 original code have been abbandoned, we are moving to a rewrite from scratch that I am personally maintaining, and I plan to maintain an Adapter for compatibility with old code. Currently the refactor is at an early stage. So, you still have to use original code. If you have any problem with MD5 Reader 2 original code you should try to adapt it to your needs and, if you want, you can contribute back (it is wellcome).

    In particular the weak parts of MD5 Reader 2 are material/texture (lack of features support) and the now well known problem of axis orientation. While the axis orientation issue appear to work correctly in most cases (in particular if you follow point 3), there support for texture/material features is still poor, even if basic textures seems to work.

most of the reader classes r not jme savable, so im actually thinking add all that in so it becomes part of jme art asset pipeline.



when do u think the rewrite will be completed? can i help?

neakor said:

most of the reader classes r not jme savable, so im actually thinking add all that in so it becomes part of jme art asset pipeline.

when do u think the rewrite will be completed? can i help?


Any help is wellcome. I am not sure about a deadline for MD5 Reader 2 refactored. But currently there is already something in the CVS repository, the org.md5reader2 package. I am concentrating on the skeleton and its animations. In fact, mesh is build on the base of bones transformations and weights influence, so it is totally skeleton dependent. I am about to finish the animation parsing. *.md5mesh parsing is completed except for mesh informations. Duodecimo will provide an alternative (or substitutive) parser based on JFlex and CUP.
Currently some architectural informations (and coding/name conventions) and UML diagrams are available in the wiki page. UML diagrams give a precise idea of the path I am following to implement the new code. And also the org.md5reader2 package organization is quite self explanatory.
The Adapter code will be a separate code to invoke refactor methods, providing symbols compliant with the old one.