스토리지
언리얼 Inverse Kinematic 본문
1. 개념
Inverse Kinematics (IK, 역운동학)은, 조인트 로테이션을 직접 처리하지 않고 End Effector (엔드 이펙터)위치에서 조인트 로테이션을 처리할 수 있는 방편입니다. 실제적으로는, 이펙터 위치를 주면 IK 솔루션에서 조인트의 최종 위치가 그 위치와 가급적 일치되는 로테이션 값을 구합니다. 이 방법은 울퉁불퉁한 땅이나 기타 상황에서의 캐릭터의 발이 제대로 놓일 수 있도록 하여, 월드에 재대로 반응하는 듯한 느낌을 내 줍니다.
from: https://docs.unrealengine.com/4.27/ko/AnimatingObjects/SkeletalMeshAnimation/IKSetups/
IK 셋업
Inverse Kinematic 시스템으로 고르지 않은 지형에서의 발딛기같은 반응형 애니메이션이 가능합니다.
docs.unrealengine.com
내가 이해한 것은 만약 내가 왼발을 침대에 올리고 있으면 오른쪽 다리는 그대로 일자로 유지되겠지만 왼쪽다리는 발이 올라감에따라 골반 - 무릎 - 발로 이어진 관절이 굽혀진다. 이러한 것을 처리해주는 것이 IK라고 이해를 했다.
2. 구현
아직 이해가 잘 안되서 강의를 따라 그냥 만들기만 했다.
1. 발에서 땅까지 떨어진 거리 구하기
2. 양 발의 z값을 구한 것을 보간
3. 두 값중에 작은 값을 골반을 움직이는 값으로 설정
4. 위에서 구한 OFFSET 값들로 Transform의 Z값(상하축 값) 변경
5. Full Body IK 함수를 사용해서 위에서 수정한 Transform을 적용
3. 결과
'Unreal Engine > 0. Unreal 5' 카테고리의 다른 글
충돌 판정 (0) | 2023.07.17 |
---|---|
애니메이션 적용 (0) | 2023.07.14 |
Character (0) | 2023.07.13 |
카메라 추가 (0) | 2023.07.12 |
Pawn 움직이기 (0) | 2023.07.12 |