Jump to content

#1
jen

jen
  • Members
  • 229 posts
Don't prune bones without mesh (in FBX2MDL.exe), or at least have an option to turn the process off. Let us import FBX files without mesh in them, just bones and animations.

Short version:

Quote

Here's an example of what you would get from Mixamo (1 T-Pose Mesh, 49 Animations without bones, all in FBX format): https://www.dropbox.com/s/p7avhqhn42sgbr1/In_Progress.zip?dl=0

Having disabled the "prune bones" feature would allow us to combine all 49 mesh-less animations into the T-POST mesh in run-time instead of doing it by hand through blender.

Boring read:
I have a list of animations from Mixamo, Mixamo exports the animations in separate files (one FBX file for each animation). Included in the export is the Base model (T-POSE MESH), the rest contain bones and animations only (no mesh). There is no option to combine the animations into one file with the mesh attached (for some reason).

What I want to be able to do is merge the files into the base model. I can do this by importing the files, and copying its animations into the base model using model->CopyAnimation() function. This is currently not possible since the animations are removed during the FBX to MDL conversion process because there's no mesh attached to the bones.

A possible work around is to attach the base model to each animation by hand, but THAT'S A LENGTHY PROCESS considering there are approximately 150+ FBX different files where the animations are stored.

People will find this useful. Mixamo is a go to website for animations, you'll find lots of Leadwerks users wanting this feature in the future.

Some of the list of animations that have only bones and one animation, provided by Mixamo.com:
Posted Image

Example animation file:
Posted Image

Converting FBX using FBX2MDL, bones pruned, animations found:
Posted Image

MDL file imported to Leadwerks, animations gone. You can't copy of the animations of a model if it hasn't got any animation in the first place.
Posted Image

Attached Files



#2
jen

jen
  • Members
  • 229 posts
Ok I added meshes to some of the 150 animations. I can confirm they now work.

The only problem now is, adding meshes manually by hand to ALL 150 animations will take so much time when you could just disable the "Prune Bones" feature to FBX2MDL.

#3
tjheldna

tjheldna
  • Members
  • 869 posts
I agree this would be a really useful feature to have in.

#4
macklebee

macklebee
  • Members
  • 3,527 posts
Should be relatively easy for Josh to do as it was a feature available in LE2 (the LE soldier had mesh-less animations). Since I have UU3D, I can essentially do this now by exporting to the older GMF format then renaming the files with the MDL extension.

#5
jen

jen
  • Members
  • 229 posts
I reworded the original post a bit to make it easier to understand.

Here's an example of what you would get from Mixamo (1 T-Pose Mesh, 49 Animations without bones, all in FBX format): https://www.dropbox.com/s/p7avhqhn42sgbr1/In_Progress.zip?dl=0

Having disabled the "prune bones" feature would allow us to combine all 49 mesh-less animations into the T-POST mesh in run-time instead of doing it by hand through blender.

#6
macklebee

macklebee
  • Members
  • 3,527 posts
Just want to point out that I think this should be an option. But if you are downloading these animations from Adobe's mixamo then you can simply just export them with a 'skin' on the export options.


EDIT-- actually I would recommend to export from mixamo with the skin anyways for a couple of reasons: 1) depending on your rig, you may need mixamo to remove any unnecessary bones from the animation (ie rig doesn't have finger or toe bones) and 2) mixamo used to export 'skin-less' animations without the root bone that come with the skinned exported model - so that would make the animation not work with LE anyways since the skeleton hierarchy wouldn't match.

Also looks like mixamo changes the name of the bones based on if the animation exported with a skin or not, so it would probably fail to load properly even if LE did not prune.

#7
tjheldna

tjheldna
  • Members
  • 869 posts
Strange that this topic has come up as the same issue is just starting to effect us. There are a few joints for some models that need no weights on them that are now getting pruned as they are only for mounting other entities.

Id really like this option to be user defined or turn it off possible.

#8
jen

jen
  • Members
  • 229 posts
Josh could add a "Turn off automatic pruning" checkbox option here:

Posted Image

#9
Rick

Rick
  • Members
  • 7,040 posts
+1 for this. Can't think of a reason any bones that the artist has put into the model be removed. It's not as if they did it by mistake.

#10
gamecreator

gamecreator
  • Members
  • 1,875 posts
Probably another optimization.  Obviously the less bones a scene has, the better for the engine and performance.

#11
jen

jen
  • Members
  • 229 posts

View PostRick, on 22 March 2017 - 11:25 AM, said:

+1 for this. Can't think of a reason any bones that the artist has put into the model be removed. It's not as if they did it by mistake.

Yes this is a good point. If an artists wants bones removed they can just do it in Blender.

#12
tjheldna

tjheldna
  • Members
  • 869 posts
The way I look at it is, If I put a bone there, it's there for a reason and don't want it removed.

I've tried using pivots for these mount nodes on a skinned character, but as soon as I update the model (by export), the mount nodes I've spent loads of time positioning and rotating are gone and need to be redone. In some of my old projects I've written down the position and rotation values of the nodes in a text file, so I can get the model up and running quicker, but this all can be avoided.

Adding a mount node in the rig with no weights are a sure way it comes through properly every time.

Possibly there can be a specified name you can call the bone if you want it pruned on import instead?