무릎 및 팔꿈치 반전

런타임 시 HumanIK에서 캐릭터에 대해 새 포즈를 만들면 두 가지 다른 전략을 사용하여 캐릭터의 무릎과 팔꿈치를 구부릴 수 있습니다.

 

왼쪽의 이미지처럼 보통 사람이 구부리는 방식으로 구부릴 수 있습니다.

이는 HumanIK에서 사용하는 기본 구부리기 전략입니다.

 

왼쪽의 이미지처럼 반대 방향으로 구부릴 수 있습니다.

이 옵션은 다리가 새 또는 네 발 달린 동물(예: 강아지, 고양이 또는 말)의 뒷다리처럼 움직이는 캐릭터를 만들려는 경우에 자주 사용됩니다.

캐릭터의 각 팔꿈치와 무릎에 대해 개별적으로 구부리기 축을 설정할 수 있습니다.

관절 반전

캐릭터의 관절을 반전하려면 HIKInverseJoint 함수를 호출합니다.

예를 들면 다음과 같습니다.

HIKInverseJoint(MyCharacter, HIKLeftKnee, 1);
HIKInverseJoint(MyCharacter, HIKRightKnee, 1);

관절 반전 테스트

관절이 반전되었는지 여부를 확인하려면 HIKIsJointInverted 함수를 호출합니다.

예를 들면 다음과 같습니다.

if (HIKIsJointInverted(MyCharacter, HIKLeftKnee) == 0)
{ 
   ...   // the joint uses the default bending direction 
}
if (HIKIsJointInverted(MyCharacter, HIKLeftKnee) != 0)
{ 
   ...   // the joint is inverted 
}

캐릭터 스트리밍 및 저장

캐릭터의 관절 반전은 HIKWriteToStream() 함수를 사용하여 바이너리 스트림에 캐릭터를 기록하는 경우에는 포함되지만 HIKSaveCharacter() 함수를 사용하여 파일에 캐릭터를 덤프하는 경우에는 포함되지 않습니다.