역 시네마틱스 (IK)는 컴퓨터 애니메이션에서 캐릭터가 환경과 실제로 상호 작용하는 방식을 효율적으로 만드는 데 사용되는 일반적인 기술입니다. 캐릭터에 대한 현실적인 이동을 만들고 이상하지 않게 조정하려면 여러 관절의 작은
이 애니메이션 기술은 다음과 같은 예에 해결책을 제공할 수 있습니다.
IKControl
Studio를 사용하여 애니메이션 편집기 외부의 캐릭터 리그에 안전하게 IK를 추가할 수 있습니다. Studio를 사용하면 모든 캐릭터, 예를 들어 R15, Rthro 및 사용자 지정 가져온 스킨 캐릭터에 적용할 수 있는 프로그래밍 방식으로 IK를 적용할 수 있습니다.
Class.IKControl 을 추가할 때, 필요한 속성을 올바르게 설정하여 예기치 않은 및 자연스럽지 않은 애니메이션 결과를 피합니다. 모든 애니메이션에서 테스트 하세요 를 확인하여 원하는 결과를 달성하세요.
필수 속성
캐릭터의 IKControl에 추가할 때, Humanoid 또는 AnimationController에 다음 필수 속성을 설정해야 합니다.
속성 | 설명 |
---|---|
Type | IK 컨트롤의 동작 유형을 지정합니다. 동작 옵션 목록은 Enum.IKControlType에 참조하십시오. 일반적인 동작 유형은 Position 또는 Transform 입니다. |
EndEffector | 캐릭터 리그에 있는 BasePart 또는 Bone 을 트랙하는 경우에는 Target 에 도달하기 위해 2>왼쪽 팔2> |
Target | Class.IKControl.EndEffector|EndEffector 개체는 다음을 가리키거나 향합니다. Target 은 세계 위치의 모든 개체를 가리킬 수 있습니다. |
ChainRoot | Class.IKControl.ChainRoot|ChainRoot 또는 Class.IKControl. |
IKControls 테스트
Class.IKControl 프로그램을 프로그래밍 방식으로 직접 또는 탐색기를 통해 추가 또는 편집할 수 있습니다. IKControl 동안 플레이 테스트를 수행하여 캐릭터의 이동에 다양한 속성이 어떻게 영향을 미치는지 확인할 수도 있습니다.
Class.IKControl 을 대상으로 사용하는 Attachment 을 사용하여 빠르게 테스트하려면:
테스트 탭에서 플레이 를 선택하여 플레이 테스트를 시작합니다.
캐릭터 모델의 옆에 있는 ⊕ 아이콘을 클릭하고 부착물을 추가하십시오.
선택 하십시오 부착물 및 이동 도구를 사용 하 여 뷰포트에서 캐릭터 앞에 개체를 위치 하십시오.
In the 탐색기 창, select the ⊕ 아이콘을 캐릭터의 Humanoid 옆에 추가하고 an 1>IKControl1> 을 추가합니다.
선택 IKControl 및 속성 값을 속성 패널에 설정하세요.
- 입력하기 : 드롭다운에서 Transform 을 선택합니다.
- EndEffector : 탐색기에서 모델의 왼쪽 핸드를 선택합니다.
- 대상 : 탐색기에서 새로 생성된 부착물 개체를 선택합니다.
이제 왼쪽 팔이 목표물 Attachment 에 도달해야 합니다. Attachment 을 이동하거나 IKControl 속성을 편집하여 다양한 결과를 달성할 수 있습니다.
제약 사항 추가
Class.Constraint|Constraints를 사용하여 연결 부품이 목표에 도달할 때 얼마나 움직일 수 있는지 제한할 수 있습니다. 제한은 엘보우 및 무릎과 같은 연결 부품이 자연스럽게 구부지거나 메카닉 연결 부품을 특정 방향으로 회전하도록 할 수 있습니다.
Class.IKControl 을 사용하여 캐릭터에 제약 사항을 추가하려면 제약 사항 IKControl 및 제약 사항 Class.IKControl 이 다음 조건을 충족해야 합니다.
- 제약 사항의 Attachment0 / Attachment1 속성은 제약 사항의 Motor6D2>Class.Limit.Attendance12> / 5>Class.Motor6D.Part15> 에 부착됩니다.
- Class.Motor6D / Attachment1 / Motor6D CFrames의 상대 위치는 1>Class.Motor6D1> / 4>Class.Motor6D.C1|C14> / 7>Class.Motor6D
- 제약 조건과 IKControl은 동일한 부모 Model 를 공유합니다.
다음 지침에서는 엘보우의 회전을 제한하고 손목을 제한하기 위해 HingeConstraint 를 추가하는 프로세스를 설명합니다. BallSocketConstraint 를 손목에 추가하여 회전 각도를 제한합니다.
엘보우
Roblox R15 캐릭터에는 엘보우 제한을 적용할 수 있는 부착물이 이미 있습니다. 엘보우에는 LeftUpperArm과 LeftLowerArm 모두 LeftElbowRigAttachment 가 있습니다. 제약을 추가하는 것 외에도 각 부품의 LeftElbowRigAttachment 에 ��
Class.HingeConstraint 및 자식 부착물을 추가하려면:
탐색기에서 모델의 왼쪽 하단 팔을 찾아 클릭하고 ⊕ 버튼을 클릭하십시오.
이름 LeftElbowConstraint 와 함께 HingeConstraint 를 추가합니다.
탐색기에서 왼쪽 상단 팔.왼쪽 팔 리그 부착 에 이동하고 부착물을 추가하십시오.
클릭하십시오 ⊕ 버튼 을 추가하려면 이름을 가진 부착물 을 추가하십시오.
뷰포트에서 부착을 선택하고 회전 도구를 사용하여 부착을 회전하여 노란색 주 축이 손목의 예상 회전 축이 되도록 합니다.
이 새 부착에 LeftElbowConstraint.Attachment0 속성을 설정합니다.
탐색기에서 모델의 왼쪽 하단 팔.왼쪽 상단 팔 리그 어착 에 부착물 추가:
- 클릭하십시오 ⊕ 버튼 및 이름 Attachment 와 LeftElbowConstraintAttachment1 을 가진 첨부 를 추가합니다.
- 이 새 부착에 대해 왼쪽 상단 팔.왼쪽 팔 제약 부착.액션1 속성을 설정합니다.
- 복사 하 LeftElbowConstraintAttachment0.CFrameRotation 속성을 왼쪽 팔 제약 조건 부착 0.CFrameRotation 값으로 붙여넣습니다.
IKControl을 테스트하여 엘보우가 자이로스 축을 중심으로만 회전하는지 확인하십시오.
손목
엘보우 제약 조건을 사용하여도 IKControl은 손목으로 부정확한 포즈를 생성할 수 있습니다.
Class.Ballsocket약속을 추가하여 손목의 회전을 제한하여 이 문제를 개선할 수 있습니다. 손목에 클래스 HingeConstraint를 추가하는 프로세스와 유사하지만, 이 제약 속성을 사용하여 손목의 범위를 더 제어할 수 있습니다.
손목에 대한 BallSocketConstraint를 추가하려면:
- 탐색기에서 모델의 왼쪽 팔을 찾아 클릭하고 왼쪽 버튼을 클릭하십시오.
- 이름 LeftWristConstraint으로 Ball소켓 제약을 추가합니다.
- 모델의 왼쪽 하단 팔.왼쪽 손목 리그 부착 을 찾아 부착를 추가하고:
- 클릭하십시오 ⊕ 버튼 및 이름 LeftWristConstraintAttachment0 으로 부착을 추가합니다.
- 뷰포트에서 부착을 선택하고 회전 도구 를 사용하여 부착을 회전하여 옐로 주 축을 모델의 싫어 손가락으로 향하게 합니다.
- Set the LeftWristConstraint.Attachment0 property to the new LeftWristConstraintAttachment0 .
- 모델의 왼쪽 손목 리그 부착 을 찾아 부착을 추가하십시오.
- 클릭하십시오 ⊕ 버튼 및 이름 LeftWristConstraintAttachment1 을 가진 첨부 파일을 추가합니다.
- Copy the LeftWristConstraintAttachment0.CFrameOrientation 속성을 복사하고 왼쪽 손목 제약 조건 부착형 LeftWristConstraintAttachment1.CFrameOrientation 속성으로 붙여 넣습니다.
- 이 새로운 LeftWristConstraintContainer1에 속성 LeftWristConstraint.Attendance1 를 설정합니다.
- 탐색기에서 LeftWristConstraint 를 선택합니다.
- 속성 편집기에서 팔로잉설정합니다.
- LimitsEnabled를 활성화합니다.
- 상단 각도를 80 로 설정합니다. 이렇게 하면 제약 조건의 축이 얼마나 회전할 수 있는지 제어하고, 손목이 약 80도 굽힐 수 있는지 알 수 있습니다.
- 캐릭터에 따라 콘의 방향을 조정하려고 할 수 있습니다. 이 작업은 회전 도구 를 사용하여 제약 사항의 부착0 을 회전하여 수행할 수 있습니다.
LeftWristConstraint를 선택하면 손목의 범위 모션을 시각화하는 녹색 콘이 나타납니다.
제약 설정이 설정된 상태에서 손으로 캐릭터 앞에 있는 IKControl을 테스트하고 손목이 더 현실적으로 회전되고 구부려야 합니다.