NoeBone takes a string and/or an index to specify parent, for convenience. This way you can have it match bone hierarchies by names or by index. You're trying to pass in an int for the string argument, you rather want:
Code: Select all
b = NoeBone(bc, boneNames[bc], NoeMat43(list(k)), None, bc)
However, that means you're passing in the the bone's index as its parent index, which translates to "no parent", so rpgMultiplyBones will hand you back the same matrices you passed it. You'll need to use the correct hierarchy, unless there really are no parents, which means your bones are all in correct space already, not needing to be multiplied and not needing to be put in parent-local space. (since they have no parents)
When I refer to model space, bone-local space, etc., I'm talking about coordinate systems, not binary locations.

So the animation data being in a different file doesn't have anything to do with what space things are in.
All the documentation there is on the Python API is in the __NPReadMe.txt file. I've been too lazy to make real documentation with example usages and all that, as the API is large enough that it would be its own undertaking, and when I have that kind of time I usually prefer to spend it actually programming. Which makes the API larger. It's a vicious cycle.
