Jump to content

Character with Rig and Animations and a crappy tutorial about transfering weights to a MakeHuman mesh


Jason Campbell

Recommended Posts

This is a rig that is compatible with Gideon that can be used if you pose the model so the arms look like their holding a gun. I found some ancient animations in an old folder that were compatible with Gideon and make it much easier to just drop the character into Torque without posing. They are pretty simplistic animations but could be helpful with AI or NPCs that don't require huge detailed movements.


If you happened to end up using this in a project or find it useful, the guy who made them has one model on TurboSquid that is from the same set.

https://www.turbosquid.com/3d-models/3d-model-character-soldier/292991


Crappy Video

mjVUlGEWPmk



What I tried to do was make an easy way to take a MakeHuman and transfer the weights from the included model to a new one. I am certainly no expert with Blender and most of the times it is luck if I get something to work.


You will need MakeHuman and Blender(with mhx2 plugin)


http://www.makehumancommunity.org/content/downloads.html


Download the .blend file and torqueGameChar folder in this torqueChar.zip

Download: https://drive.google.com/open?id=1Gf2tm7vn2aSLbX1ttCT70I3KSj_hze1J


1) Use MakeHuman to create your character. In the Pose/Animate Tab chose Tpose from the Pose Menu to the right.


Export as mhx2. I used Feet on Ground and meter as export settings.


2. Import the .mhx2 file into Blender. There are multiple meshes for hair, clothes, eyebrows etc.. We want to join them



javl12P.jpg


------ Once joined, export it as an .obj file for now. I find it easier to work with.


------ Open the included .blend file


------ Import the .obj file you just exported, rotate the model 180 degrees and scale to try to fit the model to the .blend model. Take your time and try to match the rig.


RoOv8tD.jpg


3. Getting model ready before we transfer weights.


---- Clean up the awful names of the textures and remove any duplicate textures, if there are any


----- Now is a good time to remove some polygons by using the decimate modifier and create some LODs.


----- Hide the torque rig (so we don't get confused) by clicking the eyeball to the right of it.


----- Rename the new character to have 300 at the end.


----- Select the model and then click the wrench as seen in the screenshot. Hit Add Modifier and chose Decimate.


FVwcuOg.jpg


----- Lower the ratio in the decimate window. For this tutorial I chose .3 ratio and got around 10000 faces. This will be the high detail model.


----- Click apply. Copy the model and paste it right back. Name the copy with 100 at the end. Example: tutChar100.


----- Add a decimate modifier to this model, that we will make very low poly. I went down to 0.1776 and got 2000 faces. Click apply.(See image below)


ef5Q0wh.jpg


4) Transferring weights


----- Make torqueBiped01 the parent of both details we just made by dragging them onto it in the inspector. Choose With Empty Groups from the choices.


6bArv2n.jpg


----- In the inspector Select torqueGameChar mesh(the weighted source), then use SHIFT-Left Click to select the mesh we want to copy the weights to.


YcUzP4R.jpg


----- With those two meshes still selected, go to Weight Paint. (See image below)


ARkI61A.jpg


---- Click Transfer Weights to the Left. In the Transfer Mesh Window below make sure that Source is By Name and Destination is All Layers.(See image below) the Weights will Transfer once these are changed.


v1oCoEs.jpg


---- Repeat this process for the higher detail mesh, (if you decided to create LOD) Use the original TorqueGameChar weights, don't copy the copy.


---- Make sure that the weights are there by clicking any of the bones in the inspector and going to Pose mode and see the mesh bend with the bones.


---- Once your sure that the weights are successfully transfered, you can delete torqueGameChar mesh.


---- Clean up any Lamps or Camera and go ahead and Export as .DAE and that should do it.


---- Once you get the Model in Torque you will need to rotate and move Mount0 in the Shape Editor so that the Character is holding guns correctly.


---- In the shape editor, go to Mounting in the Advanced Properties. Choose Node - Mount0, the Shape should be a third person weapon, Type should be Image.


---- Click the icon that looks like a sheet of paper to add the weapon to the model(see below)


408P4zq.jpg


---- Select the Mount0 node and rotate and move it until gun looks like it is in the models hand. You may need to load a sequence to check it.


---- Sequences are in .dsq so when loading them you will need to select that from the drop down in the lower right corner of Open File dialog.


---- You will have to go into the Material Editor and turn off Transparency on some of the textures, the skin and clothes. Some textures require transperancy.


---- Set up the details in the Shape Editor for LOD


gL3m2lu.jpg


---- I'm sure that there will be other problems. Making this tutorial was very confusing for me.

Link to comment
Share on other sites

  • 3 weeks later...

Hey Jason thanks for this, been looking for something like this for a bit now. I have not done the tutorial yet but I will soon and give feedback. I am also not great at the modeling stuff, so even if there are "better" ways of doing this I haven't seen any tutorials on it and if it works then it is better than I had/have now. So thanks a bunch!

Link to comment
Share on other sites

This looks pretty amateurish, but it reminds me that I wanted to release the source files for my fully game ready model I use in Uebergame.

Well at least you tried, I was too lazy so far to clean up my source files for release and/or writing a tutorial.

Making a fully gameready player character is probably the hardest task in game development, so we could really need a tutorial for it, since there is none so far.

Link to comment
Share on other sites

@Jason Campbell I will definitely find it useful. As I said before I have looked for a tutorial on this exact thing and could not find a single thing about it. I own the mega motion pack and wanted to use them on a makehuman generated set of models. This allows me to do so, or at least allows me to begin doing so. Since there are no tutorials or really much info at all on this, this makes me happy. I AM a beginner when it comes to models and animations, I can make AI, script, even dangerously program but have never spent a lot of time on the modeling aspect. Beginning to learn about it now.


Your tutorial for doing this is 100% better than the no tutorial we had before.


@Duion Do you ever have anything positive or nice to say at all? You literally took the time and energy to comment with nothing positive or helpful at all. You in fact post negative, taking the time out to say how his tutorial is "amateurish", which he ALREADY said in his original post, while at the same time implying you have something so much better but are just too lazy to say or do anything about it. Your post is negative, with nothing constructive or good about it. It is a waste of a post, a waste of energy, and shows how you are and how you come across. Instead of saying how amateurish it is, you could have given actual positive pointers on how it could be improved, what not to do, what to do instead. You could have been a positive influence in this community helping people do better, but instead you continually act arrogant, abrasive and negative. Why did you even bother posting at all? More self aggrandizement?

Link to comment
Share on other sites

@XIXWYRMEXIX


The tutorial about how to transfer weights and animations may indeed be helpful, but the rest is very suboptimal.


I indeed have something so much better, I once made a full character from modeling, texturing, rigging, animating and integrating it in the game and making it work flawlessly in a released game.


But I'm not decided yet how to handle player characters, there might be a way to handle everything easier.


Telling everyone on everything how great it is, does not help anyone, only actual criticism will help people improve and real men can deal with that.


The reason I posted was, that I remember that I still have a fully made character laying around that I did not pack for release yet, it is on my long to do list still and I regret not releasing it before so it can help people getting characters right.

Link to comment
Share on other sites

@Duion Do you ever have anything positive or nice to say at all? You literally took the time and energy to comment with nothing positive or helpful at all. You in fact post negative, taking the time out to say how his tutorial is "amateurish", which he ALREADY said in his original post, while at the same time implying you have something so much better but are just too lazy to say or do anything about it. Your post is negative, with nothing constructive or good about it. It is a waste of a post, a waste of energy, and shows how you are and how you come across. Instead of saying how amateurish it is, you could have given actual positive pointers on how it could be improved, what not to do, what to do instead. You could have been a positive influence in this community helping people do better, but instead you continually act arrogant, abrasive and negative. Why did you even bother posting at all? More self aggrandizement?

 

I wouldn't take the duion to heart or to mean anything. I mean i would say a great example of "amateurish" would be duions game Uebergame. I mean he releases a few levels in torque as a "multiplayer open source fps game" all it is is torque as stock with the editors still intact so you can "add your own content"

Link to comment
Share on other sites

@XIXWYRMEXIX


Nice, this should work with mega motion and that's a great pack. If you have trouble, I can help you to refine the skeleton to fit more with Torque Orc, as I believe that Gideon is a bit smaller. It is a crappy toturial but since I'm here quite a lot I can add to anything you have trouble with.

Link to comment
Share on other sites

@Jason Campbell

You should get rid of all the individual textures, simplest method would be to bake them onto one UV map. Btw the textures are all doubled, one normal and one that is the same named _LOD at the end, it is completely pointless to have those. If you get that right as well the character is close to being gameready, so it is not that bad, my initial response was just, that this all looks very amateurish at first for an experienced artist. You use like 10-40 times more texture space than you would need to and you don't even have other layers than diffuse yet.

Link to comment
Share on other sites

I am always still learning myself so this was really meant to be a starting point for people learning as well as myself. those are good suggestions. Perhaps in my next side project of learning, I will figure out how to bake into a single texture, I've always wanted to learn that. About, the doubled texture for LOD, how do I get rid of that? In Blender, is there a way to point to the same UVmap for the more detailed models?


This really wasn't meant to be a game ready character it was about how to re-use old animations and a basic way to get makehuman characters into Torque.

Link to comment
Share on other sites

To explain it really really short, you just dublicate the model and for one you just unwrap it onto one UV map, then you bake the textures of the original to your newly created one, pretty simple, once you found the right buttons.


Regarding the LOD textures, I don't even know how you managed to get them in the first place, they are pointless and I consider LOD textures pointless in general for the most part.


Yes sure as a tutorial how to re-use old animation this is great. I could not figure that out so far, but once you animated a character you will realize there are not that many animations you have to do, the most complex animation is the run and maybe reload cycle, most other animations just consist of a few poses and frames.


If you are perfectionist I would not really recommend to re-use anything, since if you transfer animations from on character to another, you don't get exactly the same result, the only exception is, when they are designed to be compatible from the start.


My point is, you may teach people bad design behavior, that is why I did not make tutorials so far, since I always think I may have done something totally wrong and I don't want to teach people wrong things.

Link to comment
Share on other sites

That's understandable but I for one suck at animations and am not really a good modeling artist at all. I think many people fall into this sort of category. Right now for instance, I'm re-using the animations included in the Tactical AI Kit and this was sort of an exercise for me to practice making compatible rigs and what it in-tales. That is why I included the blend file. Others can use this as a starting point. The weights could use some work and people can open it up and make it better. Or watch a tutorial on baking textures and implement that or learn a better way to implement my levels of detail.


The LOD textures are exported with the LOD meshes. If I delete the materials from the LOD models, they turn white.


Right now I am working on a Soldier compatible rig and it seems to be coming along pretty well. I really don't want to teach people bad practices(myself included) and that is a good point. Hopefully people will see this as a starting point and be encouraged to make their makehuman models more optimized and game ready.


Perhaps no one will use this anyway, it is entirely up to them but I think re-using is a time saver for me personally because animation is very hard for me.

Link to comment
Share on other sites

  • 2 weeks later...

Hey Jason, finally got around to beginning this tutorial, found a few issues that make it difficult to follow a bit. The character you provide and use as a base is not the same one you are using in the tutorial. I mean it is the same one but not the base you are using. It looks like it is your finished product. Your pics and my blender display are not the same. In your example you have a base model that has torquegamechar in the model with your "newly" named tutchar300 on the outside of this group as you build it. In my unzipped character you provide this is not there. you have no torquegamechar, just your 300 and 100 finished meshes. I tried using one of these to transfer weights but it does not seem to work. I can not get the weight transfer to actually happen no matter what I do. I figured it shouldn't matter if I used those or the original, but using those just does not happen. I will play more with it today, and as I have never done this a lot could be me, but I know the model downloaded and the one I see in your examples are in different stages which makes it harder to follow.

Link to comment
Share on other sites

Sorry about that. It was so confusing, keeping all those .blends straight. The model named torqueGameChar300 is torqueGameChar, I just used the same file to make the "finished" character. The reason for the different names is that I made like I was doing the tutorial but didn't upload that same .blend. Woops. Anyway, it doesn't matter. As long as you drop your character on the torqueBiped01 to set it as parent. Choose "with empty groups" and then click torqueGameChar300 to select it, then hold SHIFT and select your character. Without selecting anything else, go to Weight Paint. Click Transfer Weights button. This opens a window below, named Transfer Mesh Data. You will see Source Layers Selection - By Order. Change this to By Name and then the transfer should happen.


Edit: I would also like to say that if you have a rigged, pose-able character you can just pose it to fit the bones and then apply the armature to effectively "freeze" that pose then transfer the weights. I just mean, it doesn't have to be a makehuman character.

Link to comment
Share on other sites

Sorry about that. It was so confusing, keeping all those .blends straight. The model named torqueGameChar300 is torqueGameChar, I just used the same file to make the "finished" character. The reason for the different names is that I made like I was doing the tutorial but didn't upload that same .blend. Woops. Anyway, it doesn't matter. As long as you drop your character on the torqueBiped01 to set it as parent. Choose "with empty groups" and then click torqueGameChar300 to select it, then hold SHIFT and select your character. Without selecting anything else, go to Weight Paint. Click Transfer Weights button. This opens a window below, named Transfer Mesh Data. You will see Source Layers Selection - By Order. Change this to By Name and then the transfer should happen.


Edit: I would also like to say that if you have a rigged, pose-able character you can just pose it to fit the bones and then apply the armature to effectively "freeze" that pose then transfer the weights. I just mean, it doesn't have to be a makehuman character.

 

Hahaha no problem, I figured as much. I can imagine it being difficult to keep them all straight. I am not criticizing your little tutorial (not negatively anyway), just want to make it work and the differences made it harder as I am not very good at this aspect of blender at all. As I said, between my ignorance and the differences I was just confused. In the end I learned a lot by just playing around with it trying to make it work. Also just want this to be a nice little resource for anyone interested and want to smooth it out so if anyone else wants or needs to use it, the tutorial makes more sense. @your edit- Did not know that but figured it should be the case, just didn't know how. Will check that out once I get the weights transfer down. Baby steps!


I will do it again with your clarifications. Thanks for the response.

Link to comment
Share on other sites

I'm pretty certain making animations is easier than all what you are doing here, since I as a good artist was able to learn how to animate and fully animating my character in a few days, with no prior experience, but I was not able to transfer any animations to anything. Sure you can just rename all your bones and retarget and transfer anything so it will match some other already animated character, but as soon as you need even one custom animation, you have to do it your own and learn how to do it, which will almost certainly happen at some point, just saying.

Link to comment
Share on other sites

I'm pretty certain making animations is easier than all what you are doing here, since I as a good artist was able to learn how to animate and fully animating my character in a few days, with no prior experience, but I was not able to transfer any animations to anything. Sure you can just rename all your bones and retarget and transfer anything so it will match some other already animated character, but as soon as you need even one custom animation, you have to do it your own and learn how to do it, which will almost certainly happen at some point, just saying.

 

That is not true. Just because you made animations in a certain amount of time and found it easier than transferring animations does not mean making them is easier. You do realize different people have different skillsets and find some things easier than others and vice verse? I find this much less tedious than animating. I already know how to animate, I just suck at it and find it boring and tedious. It also teaches one how things work even if never used. As I said in another post, I have the mega motion pack, great animations in there and better than I could do in months and months of animating. Also knowing how things work and knowing how to animate AND do this just expands knowledge and gives more options for future projects. You yourself said you couldn't even figure this out. It was easier for you to just animate them. It is easier for me to grab a compatible skeleton and transfer weights. I will animate if I have to, I can do it. I just dislike doing it and it takes more time. I am one person. I am not part of a team. Using animations and transferring weights saves me time, then I can animate the things I have to, and tweak the weights, this is much faster for me. You assume a lot of things, just saying.

Link to comment
Share on other sites

Do whatever you want, I'm just commenting what I think is wrong.


I also don't think there is such thing as an inherent skillset, you can learn anything if you want to, given a certain amount of base intelligence, which I assume exists in most people here.


The biggest time waster is probably, if you don't have a professional to tell you how things are done correctly, since then you spend much time doing the wrong things until you find the right way, while it would be much easier to do things right from the start.


@Jason Campbell

For example I used your shotgun model in Uebergame, since I wanted to save me time: https://opengameart.org/content/semi-auto-shotgun-with-magazine

Later I figured out that the textures were all broken so I removed them and use plain colors and the mesh was not the best as well, that was in 2016 and now I see that you still do textures wrong. I could give you people countless other examples, where I thought I was clever to use some stuff someone already made, but in the end it turned out that it was broken in some way and I had to fix it leaving me with a not so optimal solution and not having saved me much time.

It is not that your tutorial here in general is bad, indeed it is pretty good and helpful, but it really annoys me if I see bad practices and things that are not thought through over and over again.

Link to comment
Share on other sites

I didn't do any textures for this. So MakeHuman exports textures that are broken? I'm confused. Bottom line, this saves me a ton of time. It doesn't for you and that is fine, as I said don't use it. Putting this together was a huge pain. It may seem pretty simple. If it really bothers you this much, perhaps you should put something together and teach others better practices. It would be great.

Link to comment
Share on other sites

The textures are not broken, but you should not have 10x 2k or even 4k textures for one character, especially not duplicated. Makehuman is not made to export game ready characters, you eventually have to merge meshes, textures etc.


I already put something together and therefore show how to make it right, but I did not release my character yet, since I was not fully done, I'm kind of a perfectionist there. Even the default assets roughly show you how it is done.

Link to comment
Share on other sites

I've been attempting to learn baking textures but it always screws up. The unwrap goes well and once I seemed to get the new uvmap working but the textures looked like crap. Then I couldn't replicate that. It's maddening. I haven't given in but just think of this as a thread where we share what we learn. It doesn't help to say that, for instance, you don't believe in using lod textures. That's great but how do you have a second detail use the same materials as the higher detail. Helping with that would be awesome. I am trying to learn and if I find the answer, I'll share it and update this thread.

Link to comment
Share on other sites

Well the lazy method is to press auto unwrap and bake the textures, done, may not look so nice, but it will be efficient and have good performance and will not teach people to do bad practices.

The reason to have LOD textures is to have less textures and texture size on LOD levels, but you also increase the number of total textures in the game, which probably makes performance worse again, so it is a tradeoff.

The default tree in Torque has that, it has 2x 1k textures for highest LOD and 1x 512x1024 I think for lower LOD, so it reduces draw calls by one. Additionally you can remove things like normal and specular maps for LOD levels. But I hardly ever have seen anyone doing that method, so maybe it is not so useful at all.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...