[Bf-python] Negative vertex group weights for DSON TriAx import

Michael Soegtrop MSoegtrop at yahoo.de
Sat Mar 7 18:56:47 CET 2015


Dear Blender Developers,

I started to write a native DAZ DSON import script and got pretty far in
just a few days (meshes, armatures, skinning, all fully featured).

One issue is that DSON supports different skin blend factors for
different rotation axes of a bone. DAZ calls this TriAx. This is
actually patented, but I have written confirmation from DAZ, that they
don't object against a DSON import feature in blender, which does
support DSON TriAx.

TriAx is quite useful. E.g. at the ellbow joint you can distribute the
rotation along the axis of the lower arm over the whole lower arm, while
the skinning of the rotation along the perpendicular axis is close to
the ellbow joint.

The only feature required to support TriAx in blender are negative
weights in vertex groups. Then TriAx can be implemented by duplicating
bones for each axis and adding some rotation copy constratints between
them. So I implemented negative vertex weights in Blender 2.73a. It
works well, except for the color ramp editor in the user preferences (it
works, but display is strange).

My main question is, what do you think about negative vertex group
weights? There are lots of range checks for vertex group weights in
blender, and supporting negative weights would mean removing these.
Should negative vertex group weights be made optional? Do .blend files
have global options like this? Making this optional in the preferences
doesn't make much sense, since it should be enabled when a file which
uses this is loaded.

Another question is what you generally think about support for patented
technology in blender. As I said, I have written confirmation (by email)
from DAZ and negative vertex weights as such are not patented so real
TriAx is just in the import script.

Please share your thoughts on this.

Best regards,

Michael



More information about the Bf-python mailing list