- changed title to Custom morph import errors
Custom morph import errors
Hello,
Just testing around and encountered two bugs while loading custom morphs:
Same steps for both are same, load custom morph.
Issue 1:
Python: Traceback (most recent call last):
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 246, in execute
self.run(context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 1077, in run
self.getAllMorphs(namepaths, context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 717, in getAllMorphs
self.loadAllMorphs(list(namepaths.items()))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 72, in loadAllMorphs
self.makeAllMorphs(namepaths)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 98, in makeAllMorphs
char = self.makeSingleMorph(name, path)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 119, in makeSingleMorph
self.makeFormulas(asset, sname)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 170, in makeFormulas
self.addNewProp(asset.getName(), asset, sname)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 226, in addNewProp
raise RuntimeError("BUG")
RuntimeError: BUG
location: <unknown location>:-1
Issue 2:
Python: Traceback (most recent call last):
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 246, in execute
self.run(context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 1077, in run
self.getAllMorphs(namepaths, context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 717, in getAllMorphs
self.loadAllMorphs(list(namepaths.items()))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 72, in loadAllMorphs
self.makeAllMorphs(namepaths)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 98, in makeAllMorphs
char = self.makeSingleMorph(name, path)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 117, in makeSingleMorph
sname = self.buildShapekey(asset)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 142, in buildShapekey
if useBuild and not skey:
UnboundLocalError: local variable 'skey' referenced before assignment
location: <unknown location>:-1
Issue 3:
Incorrect path to daz library:
ERROR:
Did not find path:
"G:/DAZ 3D/x64/DAZ 3D/DAZStudio4/shaders/iray/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf"
Ref:"/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf"
For details see
'C:\Users\user\Documents\daz_importer_errors.txt'
TRACEBACK:
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 246, in execute
self.run(context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 1077, in run
self.getAllMorphs(namepaths, context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 717, in getAllMorphs
self.loadAllMorphs(list(namepaths.items()))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 75, in loadAllMorphs
self.makeMissingMorphs()
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 451, in makeMissingMorphs
path = getDazPath(ref)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\asset.py", line 601, in getDazPath
reportError(msg, trigger=(3,4))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 130, in reportError
raise DazError(msg)
FILES VISITED:
ASSETS:
"/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/xameva/deep%20inside%20new%20gens%20v7/closedsqueeze.dsf":
<File None>
"/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/xameva/deep%20inside%20new%20gens%20v7/closedsqueeze.dsf#ClosedSqueeze":
<Morph ClosedSqueeze 0.000000 -1 0 None>
...
"/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf":
<File None>
OTHER ASSETS:
DAZ ROOT PATHS:
0: "G:/DAZ 3D/MyDaz3DLibrary"
1: "G:/DAZ 3D/x64/DAZ 3D/DAZStudio4/shaders/iray"
MISSING ASSETS:
/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7_4948
/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7
/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf
Truncated ASSETS section so there is less noise.
The issue is that plugin uses incorrect path for creating final path:
G:/DAZ 3D/x64/DAZ 3D/DAZStudio4/shaders/iray/data
this is second path that I use in plugin.
Above was my initial suspicion that incorrect path was used with was but after changing order of paths now I encounter this error:
ERROR:
Did not find path:
"G:/DAZ 3D/MyDaz3DLibrary/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf"
Ref:"/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf"
For details see
'C:\Users\user\Documents\daz_importer_errors.txt'
TRACEBACK:
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 246, in execute
self.run(context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 1077, in run
self.getAllMorphs(namepaths, context)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 717, in getAllMorphs
self.loadAllMorphs(list(namepaths.items()))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 75, in loadAllMorphs
self.makeMissingMorphs()
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 451, in makeMissingMorphs
path = getDazPath(ref)
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\asset.py", line 601, in getDazPath
reportError(msg, trigger=(3,4))
File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 130, in reportError
raise DazError(msg)
FILES VISITED:
ASSETS:
"/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/xameva/deep%20inside%20new%20gens%20v7/closedsqueeze.dsf":
<File None>
...
"/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf":
<File None>
OTHER ASSETS:
DAZ ROOT PATHS:
0: "G:/DAZ 3D/x64/DAZ 3D/DAZStudio4/shaders/iray"
1: "G:/DAZ 3D/MyDaz3DLibrary"
MISSING ASSETS:
/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7_4948
/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7
/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf
As always thanks in advance for fix.
Best regards
Comments (4)
-
reporter -
repo owner In all three cases there is something fishy about the assets being loaded, which caused untested parts of the code to be run.
- All previous driving properties have known if they are floats or bools. This one doesn’t. An error with a better error message is now only triggered if verbosity >= 3, otherwise the property is treated as a float.
- This happens only when there is a vertex count mismatch between the mesh and the morph. Now this triggers an error if verbosity >= 3, otherwise the morph is ignored, and a # is printed front of the name in the terminal to indicate this.
- As you expected, if a path is not found, the last one tested is printed. This is just a poor error message and not the root cause of the problem, though. In the reference
"/data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf"
I’m suspicious about the double slashes between victoria 7 and morphs. Should there be a xameva in there? What happens if you load all morphs in the xameva folder, and not just a few?
-
reporter Thanks for reply,
Did updated plug-in and retested and results are:
Encountered crash just after plug-in update and first import, happened only once, could be not related, just reporting. Crash happened while importing progress was shown probably before showing model.
Steps:
- [daz] export dbz using latest version (just in case)
- set verbosity level to 5 in plug-in and save
- use Import (not easy) to import model with dbz
- select genitalia geographt and import custom morphs. Open window will auto open in proper location.
And now:
a) select all in that default open directory:
G:\DAZ 3D\MyDaz3DLibrary\data\3feetwolf\New Genitalia For Victoria 7\Morphs\
ERROR: Duplicate asset definition Asset 1: <Morph PBMGensClosure 0.000000 4948 1141 None> Asset 2: <Morph PBMGensClosure 0.000000 4948 1141 (bpy.data.shape_keys['Key'].key_blocks["PBMGensClosure"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMGensClosure')> Ref 1: /data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensclosure.dsf#PBMGensClosure Ref 2: /data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensclosure.dsf#PBMGensClosure For details see 'C:\Users\user\Documents\daz_importer_errors.txt' TRACEBACK: File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 246, in execute self.run(context) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 1077, in run self.getAllMorphs(namepaths, context) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\morphing.py", line 717, in getAllMorphs self.loadAllMorphs(list(namepaths.items())) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 76, in loadAllMorphs self.makeMissingMorphs() File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 468, in makeMissingMorphs self.makeAllMorphs(namepaths, False) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 99, in makeAllMorphs char = self.makeSingleMorph(name, path, force) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\load_morph.py", line 111, in makeSingleMorph asset = parseAssetFile(struct) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\files.py", line 333, in parseAssetFile return parseMorph(asset, struct) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\modifier.py", line 77, in parseMorph return asset.parseTypedAsset(mstruct, Morph) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\files.py", line 300, in parseTypedAsset self.saveAsset(struct, asset) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\asset.py", line 191, in saveAsset reportError(msg, trigger=(2,4)) File "C:\Users\user\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\Diffeomorphic-import-daz-dev\error.py", line 130, in reportError raise DazError(msg) FILES VISITED: ASSETS: "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs//ctrlgensclitoralhoodleftright.dsf": <File None> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs//ctrlgensglansclitorisleftright.dsf": <File None> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs//ctrlgensglansclitorisupdown.dsf": <File None> ... "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensmonspubisadjustment.dsf#PBMGensMonsPubisAdjustment": <Morph PBMGensMonsPubisAdjustment 0.000000 4948 195 (bpy.data.shape_keys['Key'].key_blocks["PBMGensMonsPubisAdjustment"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMGensMonsPubisAdjustment')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensopen.dsf#PBMGensOpen": <Morph PBMGensOpen 0.000000 4948 1504 (bpy.data.shape_keys['Key'].key_blocks["PBMGensOpen"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMGensOpen')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensopen1.dsf#PBMGensOpen1": <Morph PBMGensOpen1 0.000000 4948 1731 (bpy.data.shape_keys['Key'].key_blocks["PBMGensOpen1"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMGensOpen1')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmgensoverallsize.dsf": <File None> ... "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmvictoria7genscorrectiveltbs.dsf#PBMVictoria7GensCorrectiveLTBS": <Morph PBMVictoria7GensCorrectiveLTBS 0.000000 4948 4259 (bpy.data.shape_keys['Key'].key_blocks["PBMVictoria7GensCorrectiveLTBS"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMVictoria7GensCorrectiveLTBS')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmvictoria7genscorrectivertb.dsf#PBMVictoria7GensCorrectiveRTB": <Morph PBMVictoria7GensCorrectiveRTB 0.000000 4948 3585 (bpy.data.shape_keys['Key'].key_blocks["PBMVictoria7GensCorrectiveRTB"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMVictoria7GensCorrectiveRTB')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/morphs/pbmvictoria7genscorrectivertbs.dsf#PBMVictoria7GensCorrectiveRTBS": <Morph PBMVictoria7GensCorrectiveRTBS 0.000000 4948 3903 (bpy.data.shape_keys['Key'].key_blocks["PBMVictoria7GensCorrectiveRTBS"], bpy.data.objects['New Genitalia For Victoria 7.001'], 'PBMVictoria7GensCorrectiveRTBS')> "/data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf": <File None> OTHER ASSETS: DAZ ROOT PATHS: 0: "G:/DAZ 3D/x64/DAZ 3D/DAZStudio4/shaders/iray" 1: "G:/DAZ 3D/MyDaz3DLibrary" MISSING ASSETS: /data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7_4948 /data/3feetwolf/new%20genitalia%20for%20victoria%207/new_gens_v7_4948.dsf#new_gens_V7
NOTE1: truncated some to save space, full attached: https://easyupload.io/f4e3d8
NOTE: maybe I also have left over files from outdated version ? Could that cause issues ? My library is old and I manually updated gens IIRC.
2. Hm… maybe old assets in my library as I manually updated assets so maybe leftover.
3. Selecting single or all of the morphs produce same error. Note that there are some morphs imported, probably just not all of them (didn’t tested in Daz how many there suppose to be), and they don’t work (I do assume that this is caused by verbosity error and plugin stopping import on error, if not then maybe that’s issue ?).
Also that double slash happens still and is before morphs and should be after:
plugin -> /data/3feetwolf/new genitalia for victoria 7//morphs/pbmgenspullout.dsf file on fs -> /data/3feetwolf/New Genitalia For Victoria 7/Morphs/Xameva/Deep Inside New Gens V7/pbmgenspullout.dsf
All above was tested using
1.6.0.0129
+blender 2.93.0 alpha
NOTE: Double noting here, when I do set verboisity level to 5 most of imported morphs don’t work and there is less imported morphs on list then when using verbosity 1 practically all of them works and there is more of them. I do assume that’s intended behaviour caused by error level stopping import in verbosity > 3 ?
Bottom line, when verbosity is set to 1 some (probably most of morphs) do load and there are those errors when I set verbosity to > 3.
@Thomas Larsson If this is working fine on Your end then please close this issue. Most probably it’s problem with assets on my end (caused by manual update ?)
-
repo owner - changed status to closed
- Log in to comment