10 Angajamente 4388eeb213 ... f6e69242ca

Autor SHA1 Permisiunea de a trimite mesaje. Dacă este dezactivată, utilizatorul nu va putea trimite nici un fel de mesaj Data
  josephbburg f6e69242ca Merge branch 'small-papercuts' into 'master' 1 lună în urmă
  zNight 23d00c831c Fix some small UI related issues 1 lună în urmă
  josephbburg 25f36937c6 Merge branch 'patch-2' into 'master' 1 lună în urmă
  josephbburg fd8428aad4 Merge branch 'custompropsocket-interface-type' into 'master' 1 lună în urmă
  josephbburg 4bef6d4325 Merge branch 'drivervariable-fanout-copy' into 'master' 1 lună în urmă
  whalemenace d5771f2064 Fix: shared driver variable dicts renamed in place corrupt multi-driver fan-out 1 lună în urmă
  josephbburg 3aecaf79e7 Merge branch 'hook-radius-driver-names' into 'master' 1 lună în urmă
  whalemenace 53855bce78 Fix: hook radius drivers get duplicate variable names -- Blender 5.2 no longer auto-uniquifies them, expression can't resolve, radius evaluates 0 1 lună în urmă
  whalemenace 1574b0c7ce Allow CustomPropSocket as a group interface type 1 lună în urmă
  whalemenace 82a57aa680 Fix: bFinalize TypeError on Blender 5.2 (bbone scale cleanup) 1 lună în urmă
5 a modificat fișierele cu 9 adăugiri și 1 ștergeri
  1. 3 0
      __init__.py
  2. 3 0
      deformer_nodes.py
  3. 1 0
      misc_nodes.py
  4. 1 0
      socket_definitions.py
  5. 1 1
      xForm_nodes.py

+ 3 - 0
__init__.py

@@ -433,6 +433,9 @@ def register():
 
 def unregister():
     bpy.types.NODE_MT_context_menu.remove(node_context_menu_draw)
+    bpy.types.NODE_MT_add.remove(node_add_menu_draw)
+    bpy.types.VIEW3D_MT_armature_add.remove(armature_add_menu_draw)
+    bpy.types.TOPBAR_MT_file_import.remove(import_menu_draw)
     for tree in bpy.data.node_groups: # ensure it doesn't try to update while quitting.
         if tree.bl_idname in ['MantisTree, SchemaTree']:
             tree.is_exporting=True; tree.is_executing=True

+ 3 - 0
deformer_nodes.py

@@ -355,11 +355,14 @@ class DeformerHook(MantisDeformerNode):
         from .drivers import CreateDrivers
         axes='XYZ'
         for i in range(3):
+            suffix = "" if i == 0 else f"_{i:03d}" # explicit names -- 5.2 no longer uniquifies duplicates
             var = var_template.copy()
+            var["name"]="a"+suffix
             var["channel"]="SCALE_"+axes[i]
             driver["vars"].append(var)
             if isinstance(hook, (Bone, PoseBone)):
                 var1=var1_template.copy()
+                var1['name']="b"+suffix
                 var1['channel']="SCALE_"+axes[i]
                 driver['vars'].append(var1)
         CreateDrivers([driver])

+ 1 - 0
misc_nodes.py

@@ -1081,6 +1081,7 @@ class UtilityDriver(MantisNode):
                 "CONSTANT",]
         for inp in list(self.inputs.keys() )[3:]:
             if (new_var := self.evaluate_input(inp)):
+                new_var = dict(new_var) # shared with other consumers -- never rename in place
                 new_var["name"] = inp
                 my_vars.append(new_var)
             else:

+ 1 - 0
socket_definitions.py

@@ -1308,6 +1308,7 @@ class CustomPropSocket(MantisSocket):
     bl_idname = 'CustomPropSocket'
     bl_label = "Custom Property"
     color_simple = cString
+    is_valid_interface_type=True
     color : bpy.props.FloatVectorProperty(default=cString, size=4)
     input : bpy.props.BoolProperty(default =False,)
 

+ 1 - 1
xForm_nodes.py

@@ -574,7 +574,7 @@ class xFormBone(xFormNode):
             for attr_name in props_sockets.keys():
                 try:
                     setattr(pb, attr_name, 0) # just clear it
-                except ValueError:
+                except (ValueError, TypeError): # Blender 5.2 raises TypeError for scalar -> vector
                     setattr(pb, attr_name, (1.0,1.0,1.0)) # scale needs to be set to 1