makehumancommunity / makehuman-plugin-for-blender

!DEPRECATED! Plugin for makehuman and related programs (it has been replaced with MPFB2)
https://static.makehumancommunity.org/mpfb.html
220 stars 56 forks source link

Materials white when in MH in "Pose / Animate -> Skeleton" Tab #55

Closed Palmer-JC closed 3 years ago

Palmer-JC commented 5 years ago

I am now working almost full time on finishing Kinect. I was experimenting with getting different meshes. One time, I had left the MakeHuman session on the Skeleton selection area. When you do this the materials are just brand new principled nodes, basically all white with not textures.

joepal1976 commented 5 years ago

Yeah. The socket call reads what material is currently set on G.app.selectedHuman. In pose/skeleton/some other views, a different (usually transparent) material is set.

It probably should read materials from some other place, although I currently don't know exactly where.

Aranuvir commented 5 years ago

skeletonlibrary.py changes the material in its onShow and onHide functions and stores that information locally. Technically it should be possible to read out the local information without the need of altering MakeHuman itself, though this will be probably quite cumbersome. IMHO the cleanest solution to overcome the problem is to introduce a new property in human.py (self.backupMaterial) set to None and alter the onShow/onHide functions accordingly. Then you can run a simple "if human.material.name == 'XrayMaterial' and human.backupMaterial: ..."

Aranuvir commented 5 years ago

... um, I forgot to mention, it has to be done for each proxy, too. Not so convenient, either.

marbel9 commented 4 years ago

I'm having the same issue with the material preview and rendered view ports. Does this stem from the same problem?

joepal1976 commented 4 years ago

Unless you imported using MPFB while MH was in pose mode, it's unlikely it's the same problem.

Hunanbean commented 4 years ago

As is probably known, but to clarify further. even if after you import from the 'pose/animate' tab and the materials fail, if you then delete all in blender, put makehuman to the modeling or other proper importable page, when you reimport, the materials stay failed as they did when you initially imported from 'pose/animate' tab. Possible relation to issue #79 at its core? I would have no way of verifying that assumption.

Aranuvir commented 3 years ago

Providing a fix for this issue, though it was a problem on the MakeHuman side of the socket. To test the fix both MakeHuman and the socket plugin need an update.

joepal1976 commented 3 years ago

Tested and working for me