- 애니메이션 리깅에서 chain ik, 체인 IK 적용해보기.
1. 체인 IK를 적용할 제일 상단 오브젝트(Monster)에 애니메이터와 Rig Builder 컴포넌트를 추가한다.
그리고 자식 오브젝트로 빈 오브젝트를 만들고 거기에 Rig 컴포넌트를 추가해준다.
2. Rig 오브젝트 자식으로 빈 오브젝트를 만들고 Chain IK Constraint 컴포넌트를 추가해준다.
Root와 Tip에 리깅(Rigging)된 오브젝트를 넣어준다.
Target에는 목표로 하는 오브젝트를 넣어준다.
3. 본 렌더러(bone renderer)를 통해 시각적으로 뼈의 위치 등을 확인한다.
- 본 렌더러는 없어도 IK 적용하는데 전혀 상관 없다. 대신에 본 구조가 보여서 보면서 설정하기가 편하다.
4. 스크립트를 통해 Rig이나 chain ik constraint 둘중 하나의 Weight의 값을(0~1까지) 조절해가면서 사용한다.
5. bone들은 빈 오브젝트이다.
6. bone의 자식으로 bone1, cube1을 추가한다.
- bone1의 자식으로 bone2, cube2를 추가한다.
- bone2의 자식으로 bone3, cube3을 추가한다.
이런식으로 진행.
7. chain ik 컴포넌트에서 root, tip, Target 등 수정했으면 최상위 오브젝트에 rigBuilder의 컴포넌트를 껐다 키거나, 재빌드 해줘야 적용이 된다.
- 실행전에 chain ik 타겟을 미리 설정해놓고 Play하면 이상없이 타겟을 목표로 삼는데, Play모드에 들어가서 실행 도중에 Target을 바꾸면 알아서 Update가 되는게 아니고, 이전 타겟에 머물러있는 상황이 발생.
// spawnMonster : 최상위 오브젝트
spawnMonster.GetComponent<RigBuilder>().Build();
bone
유니티 애니메이터 레이어(Animator layer) 껐다 키기 (1) | 2024.10.08 |
---|---|
유니티 new input system 뉴 인풋 시스템 이동,애니메이션 구현 (0) | 2024.10.07 |
유니티 랜덤으로 리스트안의 값을 섞기 (0) | 2024.10.02 |
유니티 자동 큐브타워 만들기 테스트중_V1 (1) | 2024.10.02 |
유니티 내비메쉬(NavMesh) 다시 설정하기, 장애물(Obstacle) 설정하기 (0) | 2024.10.01 |