Profile Picture

How can I turn off the linkage reaction of joints?

Posted By philipjie117 2 Years Ago
You don't have permission to rate!
Author
Message
philipjie117
philipjie117
Posted 2 Years Ago
View Quick Profile
New Member

New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)New Member (97 reputation)

Group: Forum Members
Last Active: Last Year
Posts: 6, Visits: 108
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.
https://forum.reallusion.com/uploads/images/e0c9712a-9b66-4ffe-9580-f47d.png
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.
https://forum.reallusion.com/uploads/images/e4272a91-a260-4638-a135-8c6f.jpg
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)




Reading This Topic