몇 주 전, PoseBose.matrix (뼈의 Armature-Space 매트릭스)에 대한 쓰기 액세스가 Python API에 부여되었습니다. 2.59 또는 최신 트렁크를 사용하는 경우 다음 코드를 사용할 수 있습니다.
from mathutils import Matrix
ob = bpy.context.object
globalVector = Vector((1.0, 0.0, 0.0))
mw = bpy.data.armatures['Armature'].bones['hand_IK.R'].matrix.copy()
obGlobal = ob.matrix_world
bpy.context.object.pose.bones['hand_IK.R'].matrix = ob.matrix_world.inverted()*(Matrix.Translation(globalVector)+mw.to_3x3().to_4x4())
차원 3으로 변환 한 다음 다시 4로 변환하면 원래 변환이 지워지고 globalVector를 추가하고 전체를 반전하여 개체의 글로벌 매트릭스를 고려합니다.
뼈를 조작하는 좋은 코드 예제는 retargetEndUser의 bakeTransform 함수에서 Motion Capture 용 Blender Addon, Here를 참조하십시오 .
출처
https://stackoverflow.com/questions/7415066