MB-Lab Release for Blender 2.80

Yes you are correct. The base model has a set defined number of vertices. There are 4 base meshes in the library and everything is defined by JSON.

The problem is that one of our developers has only been able to decode about half of what is needed in JSON to work. So far we have the ability to export the base mesh vertices, the polygon and the weights JSON, we still need the morph targets and expressions. This is done by this tool -

We still need to develop the scripts to get the morphs and the expressions. As of now if you were to complete the steps to add this new mesh to MB-Lab, as I did in my testing, you will still get errors related to lack of morph and expression JSON and the character would not be editable - meaning that it would go into finalized state right away.

As for my attempt to try to bring in a new character (did not go well) I think it had to do with bad weight paints, I was using a model that was already weight painted so I only did about 1/3 of what was needed or so I thought. I think I need to start over in the painting but I just had not gotten back to it so I could focus on the current version of MB-Lab. The plan is some future version of MB-Lab will have new mesh in it, just not sure when but it is actively being worked on, little by little.

Once we DO manage to do this, yes that knowledge will be shared because that’s what we do.

1 Like

So, it’s here that I’m confused.

The morphs, for me are here : C:\Users\whatever\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\MB-Lab-1_7_5\data\morphs

And when you open one file you have this kind of stuff :

{"Hands_NailsLength_min": [[775, 0.0001, 0.0, 0.0001],
[855, -0.0016, 0.0001, 0.0016],
[910, -0.0013, 0.0016, 0.002],
[1040, -0.0016, 0.0001, 0.0016],
[1041, -0.0016, 0.0001, 0.0016],
[3494, -0.0016, 0.0001, 0.0016],
[3497, -0.0016, 0.0001, 0.0016],
[3501, -0.0016, 0.0001, 0.0016],
[3667, -0.002, 0.0, 0.0021],
[3732, -0.002, 0.0, 0.0021],
[3733, -0.002, 0.0, 0.0021],
[3742, -0.002, 0.0, 0.0021],
[3745, -0.002, 0.0, 0.0021],
[3749, -0.002, 0.0, 0.0021],
[3845, -0.0016, 0.0001, 0.0018],
[3910, -0.0016, 0.0001, 0.0018],
[3911, -0.0016, 0.0001, 0.0018],
[3920, -0.0016, 0.0001, 0.0018],
[3923, -0.0016, 0.0001, 0.0018],
[3927, -0.0016, 0.0001, 0.0018],
[4023, -0.0013, -0.0001, 0.0011],
[4088, -0.0013, -0.0001, 0.0011],
[4089, -0.0013, -0.0001, 0.0011],
[4098, -0.0013, -0.0001, 0.0011],
[4101, -0.0013, -0.0001, 0.0011],
[4105, -0.0013, -0.0001, 0.0011],
[4122, -0.0013, 0.0016, 0.002],
[4123, -0.0013, 0.0016, 0.002],
[4124, -0.0013, 0.0016, 0.002],
[4127, -0.0013, 0.0016, 0.002],
[4131, -0.0013, 0.0016, 0.002],
[7123, -0.0001, 0.0, 0.0001],
[7203, 0.0016, 0.0001, 0.0016],
[7258, 0.0013, 0.0016, 0.002],
[7388, 0.0016, 0.0001, 0.0016],
[7389, 0.0016, 0.0001, 0.0016],
[8391, 0.0016, 0.0001, 0.0016],
[8394, 0.0016, 0.0001, 0.0016],
[8398, 0.0016, 0.0001, 0.0016],
[8564, 0.002, 0.0, 0.0021],
[8629, 0.002, 0.0, 0.0021],
[8630, 0.002, 0.0, 0.0021],
[8639, 0.002, 0.0, 0.0021],
[8642, 0.002, 0.0, 0.0021],
[8646, 0.002, 0.0, 0.0021],
[8742, 0.0016, 0.0001, 0.0018],
[8807, 0.0016, 0.0001, 0.0018],
[8808, 0.0016, 0.0001, 0.0018],
[8817, 0.0016, 0.0001, 0.0018],
[8820, 0.0016, 0.0001, 0.0018],
[8824, 0.0016, 0.0001, 0.0018],
[8920, 0.0013, -0.0001, 0.0011],
[8985, 0.0013, -0.0001, 0.0011],
[8986, 0.0013, -0.0001, 0.0011],
[8995, 0.0013, -0.0001, 0.0011],
[8998, 0.0013, -0.0001, 0.0011],
[9002, 0.0013, -0.0001, 0.0011],
[9019, 0.0013, 0.0016, 0.002],
[9020, 0.0013, 0.0016, 0.002],
[9021, 0.0013, 0.0016, 0.002],
[9024, 0.0013, 0.0016, 0.002],
[9028, 0.0013, 0.0016, 0.002]],

where the first number is the index of the vertex and the 3 others are displacement of the vertex in x;y,z (and the axis if a local axis, normal to surfaces at this point). The value is the maximum that we can do, of course.

You probably already know that, so I sure miss something but what ?

It has been some time since I posted anything, there has been a lot of activity to MB-Lab behind the scenes so to speak. MB-Lab 1.7.7 is being worked on and the original plans for this version took a back seat to some interesting new additions.

Hair Engine
This is a long awaited feature that is still early in stages of development but right now it works well enough to mention it. This adds particle hair to a finalized MB-Lab character. Not only that but if you go into Edit mode and select polygons you can grow hair from them as well.

Note on the Hair. Right now all it does is add hair to the character, it does not assign a shader to it yet (that is being worked on) so you will need to add one yourself. This should be figured out by the time MB-Lab 1.7.7 is released though.

Muscle System fixed.
Something happened to the Muscle system between MB-Lab 1.6.5 and 1.7.0 and the Muscle system became unstable.

…It has a big conceptual problem inherited from the original version, that the rig produces transformation in the rest pose due to poorly thought through constraints. This is generally considered bad rig design, and in MB-Lab, this transformation is actually baked into the generated character and thus applied twice…

So some surgery was performed which cleared up another bug related to the Muscle system as well.

Human Rotation Limits
This adds limits to the rotations of joints

Proxy System Update
Improvements to the proxy system includes

  • Fixed fitting of meshes that are very close to the skin. - Useful for things like stockings, socks, gloves etc…
  • New option to fit in reverse direction to convert a character-specific mesh to a generic proxy.

It should also be noted that this version was committed largely by contributors, rather than myself. I’ve done more merging and admin tasks than actual development, which is totally cool and what I was trying to do, gather the community to build something cool.

The Phenotype overhaul has been put on hold until the following version, that is a big project.
Toon Girl has also been put on hold, however I have been working on correcting the weights. We are still in need of some tools for JSON export (such as above post about the morphs)

6 Likes

good to hear , cant wait for next version .
:grinning:

Hello. I just wanted to introduce myself. I am not new to this tread I have just been lurking for 11 months. I used Makehuman and still use it. I have been following Mario’s various scripts and programs since he first released Makehead back in 2003. I installed MBL when it first came out 4 years ago but since I am nothing more then a hobbyist at CGI/3D I just stayed with Makehuman.
My primary interests are:
#1) LOW POLY creation of human figures and clothing for export to Unity and UPBGE.
#2) Animation within blender of those figures and export of the animations to those programs.
#3) Using BVH mocap files to make some of the animation easier.

As I said I am a hobbyist. I do not do CGI/3d for a living. I wish I was that good. But it is a passion with me. I have a little bit of programing experiance in python and C# but not much.

I will be following this thread much more closely in the future. Take care and keep up the good work.

2 Likes

Well thank you for the encouragement :slight_smile:

I myself used MakeHuman way back years ago. This is kind of how I got into the development of MB-Lab, I was trying to find a good character generator for a “game” I was making with my daughter at the time and found MBL. Then Manuel quit. So I tossed the code up on GitHub and this is where we are today.

Sorry there is not much to say in the terms of updates in the past week, most of it has been code re-organizing and fixing, the Hair engine is evolving more. There is a very serious bug in the IK armature that causes strange deformation in the feet, something I have been trying to figure out without having to manually edit the rigs.

Should have more to say in the following days…

1 Like

MB-Lab 1.7.7 is nearing it’s release, there is something that needs to be brought up beforehand.

Blender 2.81 is required for MB-Lab 1.7.7, this is because of the changes in the nodes, specifically the Mapping nodes between Blender 2.80 and 2.81. https://wiki.blender.org/wiki/Reference/Release_Notes/2.81/Cycles

What happens is that if a user makes a character in Blender 2.80, opens and saves it in Blender 2.81, then tries to open up that same file in Blender 2.80 the Mapping nodes break in some of the shaders of MB-Lab. Most noticeable are the iris shaders.

For instance…


This is inside the iris shader in 2.80


Same file opened up in Blender 2.81, notice that the Mapping nodes have changed (as well as the Voronoi). Once this file is saved in Blender 2.81, this breaks compatibility with 2.80.


If you open up a file saved in Blender 2.81, this is what happens. The Mapping nodes turn into Unassigned and breaks the shader, resulting in an iris that looks like this…

I know that it is generally not a good idea to do such a thing but this was a test to see what would happen if you did, well because people do this kind of thing… plus there is not as much of a difference between 2.80 and 2.81 BUT there is enough of a change that breaks certain features of MB-Lab.

So now in order to use MB-Lab 1.7.7, Blender 2.81 is required. I usually don’t like forcing people to upgrade, however as explained above, the changes in Blender were significant enough to make such a requirement necessary.

In other news.

There were some code refactoring done, this was to started because we needed to make sense of the internal code, make it more maintainable in the future, so it also makes more sense. A lot of functions were tossed into one file called algorithms.py, which is fine if it works, which it does but there is no comments on how it functions, now certain functions were moved to new files that make better sense of what these are for. To the end user this doesn’t change functionality unless we break something but so far extensive testing has been done to make sure what has been moved still works.

  • The Hair Engine, has limitations.

Again, one thing is that no shader is assigned to the hair, this is actively being worked on but currently in the dev branch of MB-Lab this feature has not been added. Currently you need to assign a new shader yourself. Sorry guys the code is not stable yet.

While it’s possible to assign hair to polygons anywhere on a MB-Lab character, there are no shape keys assigned so things like poses will be change the appearance of the hair…


For instance you CAN assign hair to the chest


But you assign a new pose to the character and the above happens…

So the Hair engine needs work but again this is a brand new feature that is evolving.

  • Several bugs in the IK and Muscle armature were fixed.

These were bugs that caused some severe deformation in the feet. All I can say is that over time and the conversion from Blender 2.79 and 2.80 might have caused some changes to armatures.


This for instance would happen if you moved or rotated the IK controller for the left foot. Things like that have been fixed.

Another bug fix was displacement of the eye and pupil if you used Displacement in MB-Lab…


This was caused by having the active UV map in the humanoid_library blend file as Eyes-cornea, this was changed back to the appropriate UV map for the skin.

I think that is all for now.

For those of you that would like to try out the development version of MB-Lab before release you can download a clone here - https://github.com/animate1978/MB-Lab/tree/dev

3 Likes

great work guys , that foot bugs was a tough one . and there is other ways to get hair on mb-lab characters , easy enough . thanks to all involved .

Thank you, THANK you !!

Blender 2.80 had some bugs that got fixed in 2.81,
and we’ve been allowed to download 2.82 alpha for a couple of weeks already,
so requiring 2.81 or better is fine, just fine. :blush:

Hi first of all, lets not drag the dialog to an other forum. I would however like to point out that there is, what I would call, a very qualified attempt to integrate MB Lab models to UE4. Please see here: Studiostry discord

However I appreciate that there is a potential license problem! But could someone please flesh out the actual/potential problems that may occur for real…

If i make a game/demo using these derived models, then will ‘all’ of the Demo be AGDPL3? And in case I wanted to avoid this… could I not just have the models in a free package that delivered along with the game?

My best bet would be that a UE4 community would love to have and share such generic and free character packages.

Hi all!

First off I want to thank everyone over the past year for their tips, suggestions and feedback. It’s been a great time and I look forward to more work on this amazing tool.

Recently I purchased a domain (finally) and a webhost to start hosting downloads of MB-Lab, instead of relying on GitHub primarily for releases.

https://mblab.dev/

MB-Lab 1.7.7 has been released and can be found here, as well as GitHub still.


MB-Lab 1.7.7

Added

  • Hair System added
  • Human Rotation Limits added
  • New option to fit in reverse direction to convert a character-specific mesh to a generic proxy.
  • New options to do more precise fitting by turning off some normally useful smoothing passes.

Changed

Bug Fixes

  • Certain bones have to be precisely aligned to the rotation of a specific other bone, which required new code.
  • Stretch to has to be applied to the muscle bones while fitting.
  • B-Bone handles and certain constraints have to be fixed in the library file via a script.
  • Fixed fitting of meshes that are very close to the skin.
  • Replaced obj.hide_select = False with obj.hide_set(False) fixing Age update bug.
  • Minor GUI edits to fix drawing issues.
  • Fixed Bump and Displacement issues in MBLab_Skin2
  • Fixed IK and IK/Muscle bugs

Known Issues

  • Hair Engine does not add a hair shader at this time, this is being worked on
  • Hair Engine does not support shapekeys

The back story on the sudden change of website hosts is that the repository started to use Large File Storage for the blend and PNG files. The problem is that unless you have Git LFS installed on your system, you do not download the actual file, instead you download a pointer file instead. This would in turn be packed into the ZIP files upon release. This in turn would cause MB-Lab to fail because the files required for operation were not valid.

I had to find a solution fast as 1.7.7 was supposed to be released soon and this was a disaster waiting to happen, so I purchased the domain name as well as a web host using the Patreon funds. I then spent the next week building a quick website. Luckily I have done this before a couple of times. Yes there is still the GitHub Pages website but that was never intended to be the main site.

This still did not solve the problem for future development so I had to fix this issue on GitHub.

Yesterday I started the surgery on GitHub to remove the files from Large File Storage, which involved using a tool to go through and filter out ALL the history of the blend and PNG files. The whole reason we went to LFS was because the repository was getting BIG and this was the result of the editing done to these files. The repo was sitting at over 500 MB. The issues afterwards is what made me decide to reverse this. I contacted tech support on GitHub, read some docs, downloaded this tool, re-read the docs and then started the process.

Let me tell you this was one of the scariest moments of development with this addon, my heart was beating quite a bit faster during this. In seconds I had wiped out all the blend and PNG data in the repo, and pushed it to GitHub. The entire history of them. I then added the data back into the directory, marked it to be committed and pushed this back into the repo.

It proved successful.

So now the repository is at a manageable size again, the 1.7.7 dev branch was merged to master, the website was opened up and things look good.

In development is more on the Hair Engine, the Phenotype overhaul and more on splitting up the code into sub-modules but that probably won’t begin until after the holidays.

10 Likes

Downloaded from your site and thx for maintaining this, but alas, I got 177 , using 2.81.16 as noted only to use but installing zip and nothing shows up.

I checked all addons and its just not there…what might I have wrong,windows 10 pro updated.

Ahw, I think it’s there, check if you see init.py in the root. Open it with notepad and see if it’s from MB-Lab. If so then you need to do a bit of a cleanup. Those files should be in a folder (MB-lab or something like that).

So a save way to install it; Extract first the downloaded .zip file. Then close blender and paste the folder called MB-lab_1_1_7 or something in your folder where you have all your other addons installed (on Windows something like: appdata/roaming/…etc).

Update: Quickly playing around with the new particle hair (not a barber here) but looks promissing. Used an old texture for skin I made long time ago, and a simple shader.

Not bad at all, I’d be so lucky to get something looking as well ;)So does the extracted folder have to be in appdir area or can I just place in addons where I have blender which is just windows download DIR. Prob. not ideal but efficient . If not no biggie I’ll just move it.

In my case the folder, on Windows is: C:\Users\MyUserNAme\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons

In the folder addons I see loads of folders of other addons, and there should also be the folder for MB-lab. (In my case the name is; MB_Lab_1_7_7, but could be that I named it myself that way. Windows doesn’t like dots, in the folder name, just in case you see a dot.).

In case you installed MBLAB and you didn’t see it in the preferences, the chance is that all those files went to the root, and you don’t want that. Try to clean it.

OK ya sometimes zip file doen’t 'work so pasting did and ty again for maintaining this.

Hi, amazing job in the website design, what do you think about adding another “gallery” section with some final renders of different characters? I mean, you added some image, but IMAO showing MB capabilities should be one of the main goals of the website. Or maybe you can just add more renders on the main page. What do you think?

By “render” I mean a full scene, Like character sitting on a sofa or something like that. I don’t know who will make those scenes BTW, but they don’t have to be super complex. Kind of showing “use cases”

A gallery is planned for the future on the site because yes there are some images but nothing really that stands out as “wow” and over the past year have seen some pretty decent renders from users, so a gallery of some sort is really needed. I’m not sure on a time line but soon, this has been brought up by other people too so it’s a request I feel I must fulfill :slight_smile:

1 Like

What is the URL for this website every one is talking about?