dependencies and their versions

MakeHuman python API, python plugins, etc

Moderator: joepal

dependencies and their versions

Postby shuang0120 » Sun Aug 30, 2015 1:04 am

Hello:
I want to run makehuman directly from a source download, what dependencies and their versions should I install beforehand? Are they numpy, pyQt (Riverbank), pyOpenGL and OpenGL? I used Windows7 64 bit, Python 2.7 and PyCharm Community Edition 4.5.3. Appreciate. I'm in urgent need of help,thanks.
shuang0120
 
Posts: 5
Joined: Sun Aug 30, 2015 12:59 am

Re: dependencies and their versions

Postby joepal » Sun Aug 30, 2015 8:26 am

First, the hard limitations are these:

* You must run python 2.7, 3.x won't work
* You must run QT4, QT5 won't work. Thus you need to match PyQt with this
* You will in all likelyhood need to run 32-bit versions of all dependencies, even on a 64-bit system. This because at least one dependency does not exist in 64-bit version, and you can't mix bittiness. This might have changed though, it was a while since this was checked.

Giving these limitations, you should be able to pick the latest matching version of all dependencies.

If you're uninterested in researching versions on your own and don't mind deps which are half a year old, there's a zip file with all that's needed here: http://files.jwp.se/makehuman.html

This is known to be working, although you might have to install a microsoft VC redist package if one of the deps complain about missing DLL packages (there's a readme in the zip).
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4465
Joined: Wed Jun 04, 2008 11:20 am

Re: dependencies and their versions

Postby RobBaer » Tue Sep 01, 2015 2:41 am

On Windows, the dependencies can be conveniently installed as a single bundle by installing WinPython:
http://sourceforge.net/projects/winpyth ... ython_2.7/

I have used the 64-bit bundle successfully (ver. 2.7.9.2) for some time with the nightly build. The bundle includes pyQT and numpy along with the Python. It's been a great experience using it!
User avatar
RobBaer
 
Posts: 1208
Joined: Sat Jul 13, 2013 3:30 pm
Location: Kirksville, MO USA

Re: dependencies and their versions

Postby joepal » Tue Sep 01, 2015 6:18 am

RobBaer wrote:On Windows, the dependencies can be conveniently installed as a single bundle by installing WinPython:
http://sourceforge.net/projects/winpyth ... ython_2.7/

I have used the 64-bit bundle successfully (ver. 2.7.9.2) for some time with the nightly build. The bundle includes pyQT and numpy along with the Python. It's been a great experience using it!


Cute. I absolutely did not know that.
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4465
Joined: Wed Jun 04, 2008 11:20 am

Re: dependencies and their versions

Postby shuang0120 » Tue Sep 01, 2015 7:47 am

joepal wrote:First, the hard limitations are these:

* You must run python 2.7, 3.x won't work
* You must run QT4, QT5 won't work. Thus you need to match PyQt with this
* You will in all likelyhood need to run 32-bit versions of all dependencies, even on a 64-bit system. This because at least one dependency does not exist in 64-bit version, and you can't mix bittiness. This might have changed though, it was a while since this was checked.

Giving these limitations, you should be able to pick the latest matching version of all dependencies.

If you're uninterested in researching versions on your own and don't mind deps which are half a year old, there's a zip file with all that's needed here: http://files.jwp.se/makehuman.html

This is known to be working, although you might have to install a microsoft VC redist package if one of the deps complain about missing DLL packages (there's a readme in the zip).



After installing these dependencies, I can successfully run those codes. :D :D, thanks a lot!!!! But there still exists a problem. I'm a student. Because of the need of research,I need to learn the makeHuman code now. In the MH, we can drag the slider to regulate model's gender, height, weight and so on. Dose there are special algorithms to control these changes? I wonder where these codes exist and I want to track these codes. I want to understand the principle of morphing. Can you help me? Thank you in advance.
shuang0120
 
Posts: 5
Joined: Sun Aug 30, 2015 12:59 am

Re: dependencies and their versions

Postby duststorm » Tue Sep 01, 2015 12:00 pm

Have a look at the files lib/targets.py, apps/humanmodifier.py, core/algos3d.py and apps/human.py
I have done my best to include a good amount of code documentation in there, that should set you on your way.
MakeHuman™ developer
User avatar
duststorm
 
Posts: 2569
Joined: Fri Jan 27, 2012 11:57 am
Location: Belgium

Re: dependencies and their versions

Postby shuang0120 » Wed Sep 02, 2015 2:52 am

duststorm wrote:Have a look at the files lib/targets.py, apps/humanmodifier.py, core/algos3d.py and apps/human.py
I have done my best to include a good amount of code documentation in there, that should set you on your way.


Thank you for your reply. :D :lol: .With your help, now I can successfully track the code. I am so happy and excited :lol:.
shuang0120
 
Posts: 5
Joined: Sun Aug 30, 2015 12:59 am

Re: dependencies and their versions

Postby Aranuvir » Fri Sep 04, 2015 6:37 pm

@RobBear: I added the WinPython-link to the BitBucket_Wiki and I have just two questions. Is installing WinPython enough, or do you need further configuration? Can we rely on the 64bit version?
Aranuvir
 
Posts: 1314
Joined: Sun Oct 12, 2014 2:12 pm

Re: dependencies and their versions

Postby shuang0120 » Wed Sep 16, 2015 2:23 am

duststorm wrote:Have a look at the files lib/targets.py, apps/humanmodifier.py, core/algos3d.py and apps/human.py
I have done my best to include a good amount of code documentation in there, that should set you on your way.


Now I have run the code for a period of time, but I still have some questions that I can't figure them out. I am new to Python, so I want to get some help from the forum. Thank you in advance!

How and where should I start the debug process about the dragging the slider to control the morphing? I have no idea so I start the process of debug from the makehuman.py. When run the app/human.py, I find some code related with core/events3d.py.

Code: Select all
 gender = min(max(gender, 0.0), 1.0)
        if self.gender == gender:
            return
        self.gender = gender
        self._setGenderVals()
        self.callEvent('onChanging', events3d.HumanEvent(self, 'gender'))


Code: Select all
class HumanEvent(Event):
    def __init__(self, human, change):
        self.human = human
        self.change = change

    def __repr__(self):
        return 'event: %s, %s' % (self.human, self.change)


But I don't understand the link between the two pieces of code. What should I do to track the human.py code to HumanEvent code? Thanks in advance!
shuang0120
 
Posts: 5
Joined: Sun Aug 30, 2015 12:59 am

Re: dependencies and their versions

Postby duststorm » Fri Oct 16, 2015 10:03 am

The code that is invoked by the slider is in lib/modifierslider.py, see the various variants of onChange and onChanging.

apps/humanmodifier.py:
ModifierAction.do() is what is executed once a slider is dragged and released, it's an undo-able action.
modifier.setValue() performs a complete update of the human, modifier.updateValue() allows selective updates.

In the end human.applyAllTargets() is responsible of updating the human.

The humanEvents are not for updating the human, they are emitted by the human when it is edited to inform other plugins of this event.

If you are interested in debugging the event propagation, there is a separate logger where event debug messages go to. It's disabled by default as it generates a lot of noise, but you can modify the logging config to enable event debugging.
MakeHuman™ developer
User avatar
duststorm
 
Posts: 2569
Joined: Fri Jan 27, 2012 11:57 am
Location: Belgium

Next

Return to Python scripts

Who is online

Users browsing this forum: No registered users and 1 guest