I suppose if “standard” MakeHuman created male and female human characters are used to do animations in blender then you can export the standards as ogre 3D and just copy the skeleton.xml to a variation model.
You can create the variation from the standard male with Make Human but you can not change any body proportions which affect the skeleton. You can still scale the model in JME3.
Some thoughts about variations:
We could probably make the MakeHuman clothes, hair and so on as separate ogre models with same skeleton and just join the model parts in JME3?
Ogre3D material file switching could be used to switch skin color.
It could be possible to do simple body type / face type variations with morphs between selected base type models.
This thread has nice details how to get the MakeHuman to blender (2.63a) and further to JME3.
Having just spent the last week or so ploughing through blender, importation, and animations just to get a character into the system to test my FPS setup, a system that can be utilised by the community would be awesome. Or at a minimum easy to use ready made models with basic animations.
Also a list of animations or guidance from experienced users on how to setup/layout the animations would also be great.
Heres a great tutorial for people starting off in animations using Blender.
Since im a silent member of the community, thought id give back something - thus if any body wants an example (WIP) using the above link - heres my effort:
I’d say having a MakeHuman preset that works well with jME and then further instructions on how to exactly import it and circumvent possible problems would make most sense, wouldn’t it? I like the idea a lot, don’t get me wrong.
Mikie, thank you for the example files. The animation tutorial link seems to be missing.
Norman agreed. Would be nice to give those presets some ready made animations, clothes, skins and make some example files through the asset line all the way to an asset pack.
I suppose the MakeHuman own basic bone system would be good preset? It has something for face and fingers as well so it looks like it covers all basic game bone system needs while being relatively simple.
Mikie, thank you for the example files. The animation tutorial link seems to be missing.
Norman agreed. Would be nice to give those presets some ready made animations, clothes, skins and make some example files through the asset line all the way to an asset pack.
I suppose the MakeHuman own basic bone system would be good preset? It has something for face and fingers as well so it looks like it covers all basic game bone system needs while being relatively simple.
-Tommi
I guess theres several levels or types of human models for games. Some of the more extended bone systems might be overblown for certain applications (e.g. RTS games) while for other games (e.g. FPS games) they might be just right. In some situations it might be necessary to implement a kind of LOD system where more simple models are used when theres lots of “humans” on screen and more extended ones for e.g. cutscenes or when the player is close to the single NPCs…
Thank you again for comments and insight. It seems we can not solve all cases before hand but maybe there is away to do the skeleton / animation LOD in some part of the asset chain or in the application.
If there is no objections I will proceed to experiment with the MakeHuman basic skeleton as this seems to be reasonable approximation between the extreme ends. It does not provide cinematic quality like muscle bones but should be complex enough for most whole body animations in games.
First goal is to create a preset character as make human, blender and ogre 3D version with some test animations like idle and walk.
Tested MakeHuman + game skeleton + Rigify => Works in Blender => Animations break in JME3
Tested MakeHuman + basic skeleton + Rigify => Works in Blender => Animations break in JME3
(Tested these also with various other version combinations to no avail.)
Tested MakeHuman + game skeleton + no IK constraints => Works in Blender => Works in JME3
Tested MakeHuman + basic skeleton + no IK constraints=> Works in Blender => Works in JME3
Tested MakeHuman + basic skeleton + custom IK constraints => Works in Blender => Works in JME3
Summary:
Unfortunately it looks like I can not get Rigify working so I will opt to use minimal custom IK constraints on top of MakeHuman basic skeleton. If someone is willing to further test Rigify setup my tests are here:
Tested whether it is possible to use skeleton XML files for different MakeHuman mesh XML files to transfer animations to different models => Does not work. Animations break down probably due to skeleton vertex deforming which is encoded in such way that tight coupling between skeleton and mesh files exists i.e. not using bone names.
Tested whether I can easily import new MakeHuman models to the animated blender file and transfer animations => Works though custom IK constraints are not in the imported MakeHuman model so actions done through IK do not transfer but baking Actions should work. Any custom modifications to MakeHuman rigging is going to be very tedious when transferring animations to new models through Blender.
Can anyone think of any other way of transferring animations between MakeHuman character models except through Blender?
Here is male character animation take 2. Clothes etc are now loaded as separated meshes and run with their own AnimControls. There is some synchronization problem between different AnimControls which occurs with both master and stable JME3.0 release. For example the hair is not in perfect synchronization with the rest of the head. All the animation calls are always done in the same time. The problem seems to be caused by any kind of lag / CPU load i.e. timing not running in perfect 60 frames per second.
Funny, this works fine with for example the WorldForge models, which also have separate parts that have to be animated separately. Looks as if the actual animations are different. The animations are played with the same tpf that your update method also gets so I don’t know how this could happen. Is there any difference between hardware and software skinning?
Earlier the animation was started on the animation event listener animation cycle completed method. Could it be that this method is invoked outside proper update loop?