makehumancommunity / makehuman

This is the main repository for the MakeHuman application as such.
http://www.makehumancommunity.org
Other
1.25k stars 254 forks source link

Problem with using add on at Blender #146

Open whatyougonnado opened 3 years ago

whatyougonnado commented 3 years ago

Hi! I used makehuman-community 1.2.0(final) at http://www.makehumancommunity.org/content/makehuman_120.html and Blender 2.83(LTS).

Because I can't see the captcha at a register page in makehuman homepage, I ask in here. image

When I make a connection between two, there is a problem. I follow https://github.com/makehumancommunity/makehuman-plugin-for-blender/issues/87 and https://github.com/makehumancommunity/makehuman-plugin-for-blender/issues/62. So I turn off or turn on this smooth button image But, not working, is there other ways to make a connection without error?

Traceback (most recent call last):
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\operators\bodyimport.py", line 14, in execute
    ImportBodyBinary()
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 89, in __init__
    FetchServerData('getBodyMeshInfo', self.gotBodyInfo)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 14, in callback
    self.readyFunction(json_obj.data)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 147, in gotBodyInfo
    FetchServerData('getBodyVerticesBinary',self.gotVerticesData,True)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 169, in gotVerticesData
    FetchServerData('getBodyFacesBinary',self.gotFacesData,True)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 187, in gotFacesData
    FetchServerData('getBodyTextureCoordsBinary', self.gotTextureCoords, True)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 201, in gotTextureCoords
    FetchServerData('getBodyFaceUVMappingsBinary', self.gotFaceUVMappings, True)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 235, in gotFaceUVMappings
    self.afterMeshData()
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 429, in afterMeshData
    FetchServerData('getBodyMaterialInfo',self.gotBodyMaterialInfo)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 14, in callback
    self.readyFunction(json_obj.data)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 459, in gotBodyMaterialInfo
    FetchServerData('getSkeleton', self.gotSkeleton)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 14, in callback
    self.readyFunction(json_obj.data)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 537, in gotSkeleton
    FetchServerData('getProxiesInfo', self.gotProxiesInfo)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 14, in callback
    self.readyFunction(json_obj.data)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 543, in gotProxiesInfo
    self.importNextProxy()
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_body_binary.py", line 551, in importNextProxy
    ImportProxyBinary(self.obj, self.name, self.proxiesInfo[self.nextProxyToImport], self.proxyLoaded, self.collection)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 122, in __init__
    FetchServerData('getProxyVerticesBinary', self.gotVerticesData, expectBinary=True, params={ "uuid": self.proxyInfo["uuid"] })
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 163, in gotVerticesData
    FetchServerData('getProxyFacesBinary',self.gotFacesData, expectBinary=True, params={ "uuid": self.proxyInfo["uuid"] })
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 195, in gotFacesData
    FetchServerData('getProxyTextureCoordsBinary', self.gotTextureCoords, expectBinary=True, params={ "uuid": self.proxyInfo["uuid"] })
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 214, in gotTextureCoords
    FetchServerData('getProxyFaceUVMappingsBinary', self.gotFaceUVMappings, expectBinary=True, params={ "uuid": self.proxyInfo["uuid"] })
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 12, in callback
    self.readyFunction(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 248, in gotFaceUVMappings
    self.afterMeshData()
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 374, in afterMeshData
    FetchServerData('getProxyMaterialInfo', self.gotProxyMaterialInfo, expectBinary=False, params={ "uuid": self.proxyInfo["uuid"] })
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 8, in __init__
    self.executeJsonCall(expectBinaryResponse=expectBinary, params=params)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\sync_ops.py", line 19, in executeJsonCall
    self.callback(json_obj)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\fetch_server_data.py", line 14, in callback
    self.readyFunction(json_obj.data)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\import_proxy_binary.py", line 415, in gotProxyMaterialInfo
    createMakeSkinMaterial(matname, obj=self.obj, materialSettingsHash=data, importBlendMat=True, onlyBlendMat=self.blendMat)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\MH_Community\mh_sync\material.py", line 87, in createMakeSkinMaterial
    mhmat = MHMat(fileName=materialSettingsHash["materialFile"])
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\makeskin\material.py", line 51, in __init__
    self._parseFile(fileName)
  File "C:\Users\AnotherMotion\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\makeskin\material.py", line 431, in _parseFile
    line = f.readline()
UnicodeDecodeError: 'cp949' codec can't decode byte 0xe2 in position 559: illegal multibyte sequence

location: <unknown location>:-1
joepal1976 commented 3 years ago

The answer to the captcha is written in the text beside it, i.e the text that is visible in your screenshot: "write makehuman backwards". The answer is thus "namuhekam".

The problem in the stack trace is a unicode decode error. Based on where the error occurs, I'd say you either have a material with a filename with an illegal character, or that the material descriptor (the .mhmat file) contains such characters.

Obviously we'd wish any possible combination of system character encodings, file encodings and serializations would work, but we're not there yet.

The only workaround I can suggest in this case is to first try making sure all characters in filenames and inside .mhmat and .mhclo files are valid UTF-8. And if it still doesn't work, go further and make everything valid ASCII (that is, only american characters, a-zA-Z0-9)

Aranuvir commented 3 years ago

I've been experimenting with the chardet library. It seems to be available in Blender, too. So we could consider to use it for encoding guessing. I'll post some code proposals internally first.