I have a question about writing a plugin. When I rotate a joint of the avatar such as Caleb.iAvatar, I found that some other joints also rotate a little bit. Here is an example:
This picture is a side view of the avatar, which is in T-pose posture. The whole avatar is straight.
When I rotate his left thigh, his whole body move down and forward a little bit, and his right knee is bent a little bit. I show the changes in parts of his body with red arrows in this picture. Hope you can understand what I say.
Is it a FK or IK properties of the avatar? I want to program to rotate only one joint and keep the others in their original position. To turn off the linkage reaction of joints, which API should I use? I had tried RLPy.RIHikEffectorComponent.SetActive(), but it seemed nothing happened.
hik_type = [
RLPy.EHikEffector_Invalid, RLPy.EHikEffector_LeftHand, RLPy.EHikEffector_LeftElbow,
RLPy.EHikEffector_LeftShoulder, RLPy.EHikEffector_RightHand, RLPy.EHikEffector_RightElbow,
RLPy.EHikEffector_RightShoulder, RLPy.EHikEffector_LeftFoot, RLPy.EHikEffector_LeftKnee,
RLPy.EHikEffector_LeftHip, RLPy.EHikEffector_RightFoot, RLPy.EHikEffector_RightKnee,
RLPy.EHikEffector_RightHip, RLPy.EHikEffector_Hip, RLPy.EHikEffector_Head, RLPy.EHikEffector_Neck,
RLPy.EHikEffector_ChestOrigin, RLPy.EHikEffector_LeftToe, RLPy.EHikEffector_RightToe,
RLPy.EHikEffector_LeftFingerBase, RLPy.EHikEffector_RightFingerBase, RLPy.EHikEffector_LeftHandThumb,
RLPy.EHikEffector_LeftHandIndex, RLPy.EHikEffector_LeftHandMiddle, RLPy.EHikEffector_LeftHandRing,
RLPy.EHikEffector_LeftHandPinky, RLPy.EHikEffector_LeftHandExtraFinger, RLPy.EHikEffector_RightHandThumb,
RLPy.EHikEffector_RightHandIndex, RLPy.EHikEffector_RightHandMiddle, RLPy.EHikEffector_RightHandRing,
RLPy.EHikEffector_RightHandPinky, RLPy.EHikEffector_RightHandExtraFinger, RLPy.EHikEffector_LeftFootThumb,
RLPy.EHikEffector_LeftFootIndex, RLPy.EHikEffector_LeftFootMiddle, RLPy.EHikEffector_LeftFootRing,
RLPy.EHikEffector_LeftFootPinky, RLPy.EHikEffector_LeftFootExtraFinger, RLPy.EHikEffector_RightFootThumb,
RLPy.EHikEffector_RightFootIndex, RLPy.EHikEffector_RightFootMiddle, RLPy.EHikEffector_RightFootRing,
RLPy.EHikEffector_RightFootPinky, RLPy.EHikEffector_RightFootExtraFinger, RLPy.EHikEffector_Quantity
]
hik_effector_component = VDdata["model"].GetHikEffectorComponent()
for type in hik_type:
hik_effector_component.SetActive(type, RLPy.EHikEffectorType_Translate, False)
hik_effector_component.SetActive(type, RLPy.EHikEffectorType_Rotate, False)