Monday, January 2, 2012

New site 2012!!!

Hi guys,
happy new year!

An important update for our community: a new site, with more services, more transparency and better illustration of processes, code, policy, bugs...

Some parts are not completed yet, and there are some bugs here and there, but most of it already works and you can enjoy:

1) a better view on the hard work we have done, with a detailed todo list, updated very often.

2) Unify all documents in one unique place.

3) Now you can see the faces of the people that are donating their time to the makehuman community.

4) A clean and immediate way to communicate with the team, using the form here

5) Finally an official gallery, with selected images.

6) A clear and easy download interface.

7) Our dear old forum, resurrected on a much more powerful server.

8) A clear description of makehuman features.

We are still working on it, hoping to improve the services and offer more and more to our community.

Tuesday, December 20, 2011

Helper geometry for clothes

Clothes and hair are morphed based on the targets for the underlying skin. This algorithm was originally intended for the creation of low-poly proxy meshes, for which is works well, but there are two problems for clothes:

  • Most clothes do not follow the body shape exactly, e.g. a coat has very little depression between a woman's breasts.

  • What to do if there is no underlying skin, as in the middle of a skirt?

  • To solve these problems, we have added some very basic clothes as part of the mesh, and are updating the targets for the new geometry. Currently the targets have been generated automatically, but the major ones needs manual tweaking, as we can see in the figure. Once targets for the helper geometry is in place, we can make clothes that adapt to that rather than to the body.


    The helper geometry does not normally show up in MH, because it is assigned UV coordinates in a region with alpha = 0. It is removed on mhx import unless the Helper Geometry option (formerly known as Diamonds) is checked.

    Sunday, November 20, 2011

    Texture projection

    This weekend I spent some time implementing a rough version of the texture projection for MakeHuman alpha7. The ultimate goal is to be able to create a texture from the different reference pictures used to create a model. Currently it only uses the current reference picture, even when you have several pictures assigned to different views. While the projection code from Saturday still had a lot a lot of seams in the rendering, the one from Sunday fixes this, as you can see in the rendering below.

    (In case you are wondering what image I used to project, it's one of the wallpapers from the local burger chain: http://www.mos.co.jp/)

    There are still a few points which can be improved. The most noticeable in the rendering below is the texture sampling. I currently use nearest neighbor instead of bi-linear sampling, so it looks a bit aliased in places where the texture surface is much lower than the object surface. If you use a higher resolution picture, this shouldn't be such a problem.
    Another improvement would be speed. Since 99% of the projection is implemented in python, it is rather slow at the moment. However I plan to write an OpenGL version once I have some time to add FBO (framebuffer object) support to our render engine.
    Besides these two technical problems, there is the GUI aspect. As I mentioned before, we will need to combine projections, for example front and side view, to obtain a more usable texture as currently polygons orthogonal to the projection plane will have very washed out texturing.
    We will also need to add a way to mask area's in the source image to avoid that the entire texture gets projected. Right now you need to erase the unneeded regions in Gimp or Photoshop and save the image with an alpha channel.
    I haven't tried the projection with a real photograph of a face yet, as I was more interested in coding the projection than actually using it. But I'm sure some of you will try it soon.

    Tuesday, November 8, 2011

    MHX export to separate directories

    Some weeks ago I made a change to mhx export that I forgot to mention. By default every exported mhx file is now located in a separate directory below the export directory, named after the character. Moreover, the relevant textures (skin, hair, clothes, etc) are copied to the textures subdirectory. There are three reasons for this change:

    1. If you import the mhx file into Blender and then save the blend file in the character's directory, file paths are made local. The path of each image is changed from the global path to a local path starting with //textures (you may have to select File > External Data > Make All Paths Relative). This means that you can move the character directory to another computer where MakeHuman is at a different location, or not installed at all, without losing the textures.



    2. Since every character now has his own texture, the texture can be modified in an image editor without affecting other characters.

    3. Things are not broken if the textures in the MakeHuman directory are changed. This happened to me when I was working on a personal project. Suddenly my heroine had a lot of holes in her, because Manuel had changed the UV layout and the textures in svn.

    However, if you don't want the separate directory, you can turn this feature off by setting SeparateFolder in mh_export.config to False.

    Friday, November 4, 2011

    SVN problem in linux

    If you are using the nightly deb for linux and get the following error message:

    D targets/mouth/images/mouth-width-min-max.png
    svn: Server sent unexpected return value (502 Bad Gateway) in response to PROPFIND request for '/svn/trunk/makehuman/data/targets/mouth/images'

    Then execute the following:

    sudo rm -rf /usr/share/makehuman/data/targets/mouth
    sudo apt-get install -y --force-yes --reinstall makehuman-nightly

    This should clean up your local svn checkout and allow you to get the latest targets.

    Saturday, October 29, 2011

    New feature + Halloween present!!

    We are proud to introduce a long-awaited feature: the custom target loader. Now anyone can make and add custom targets in MH. Thanks to Eduardo Morais, the loader is still in our SVN repository.
    To show how it works, we recreated a famous character, Frankenstein's monster. It can be downloaded from http://download.tuxfamily.org/makehuman/custom_targets/

    To try it, you need the latest SVN (or the nightly build). These are the steps:


    1. Start MakeHuman. A new folder will be created in your USER/makehuman/custom. In Windows, this is usually in mydocuments/makehuman/custom 
    2. Unzip the file frankenstein.target.zip into the "custom" folder.
    3. The Frankenstein creature is modeled upon the male character. So, first of all, you need to move the gender slider to 100% male (fig. 1). 
    4. Now, go in modeling->custom. Press the "Rescan folder" button, in order to refresh the target list. A new slider will appear on the left (fig. 2). Now you can mix Frankenstein's monster with your male character.


    Fig. 1











    Fig. 2

    Thursday, October 27, 2011

    Topology selector!!!

    This is a very important feature.
    Now you can select your preferred topology, in order to match your needs: games, zbrush-friendly, optimized, etc..
    Makehuman: making real innovation.

    © MHteam 2001-2010