Technical/Riging
[MAX]Hierarchy
ParkJinseok
2021. 3. 1. 15:02
Pivot
Adjust Pivot Rollout
- 이 기능들은 절대로 Bone에 사용하면 안됨.
- Bone은 개념적으로 Pivot 그 자체이기 때문에 Bone에 적용해야 할 경우에는 Bone Tools의 Bone Edit Mode를 사용해야 함.
Affect Hierachy Only
- Rotation과 Scale에만 적용 됨.
- 선택한 Object의 자식들에게 영향을 주게 되는데, 자식들의 Pivot 방향은 변하지 않고 서로 간의 상대적인 위치가 변경 된다.
- AutoKey를 끄고 Key 주는 것과 비슷한 느낌으로 전체에 영향을 주게 되지만 선택한 Object가 움직이는 것이 아닌 자식들이 움직이게 됨.
Adjust Transform Rollout
Don't Affect Children
- Bone Tools에 있는 Bone Edit Mode와 동일한 기능
- 일반적으로 부모를 변경 시키면 자식이 변화를 물려받지만 이 버튼을 활성화 할 경우 자식에게 영향을 주지 않음
- 외부적으로는 아무런 변화가 없는 것 처럼 보이지만 내부적으로 더 복잡한 상황이 됨.
Transform
- 선택한 Object의 Local 축을 World 방향에 맞게 정렬 시킴.
- 이 때, 선택한 Object나 자식 Object도 겉으로 보기엔 변화가 없어보이지만 내부적으로 변화가 생김.
Scale
- 선택한 Object의 Scale 값을 초기화 시킴.
- 아무런 변화도 없어 보이지만 선택한 Object나 자식 Object도 겉으로 보기엔 변화가 없어보이지만 내부적으로 변화가 생김.
- Non-Uniform Scale이 상속되는 문제를 해결하는데 사용 됨.
Skin Pose Rollout
Set As Skin Pose
- 특정 포즈를 Skin Pose로 저장 함.
Assume Skin Pose
- Set As Skin Pose로 저장한 Pose로 돌아감.
- Assume Skin Pose를 한 프레임에 Key가 찍히게 됨.
SkinPose Mode
- Set As Skin Pose 포즈에서 설정한 Pose로 돌아감.
- Biped Figure Mode와 비슷한 기능
- Set As Skin Pose와 같이 특정 포즈를 저장하는 기능을 함.
Link Info
Locks Rollout
- Lock은 단순히 마우스 드래그에 의한 움직임만 막아 줄 뿐임.
- 복잡한 Rigging에서 애니메이터의 실수를 막아주는 정도의 기능으로 사용 됨.
Inherit Rollout
- Inherit Option을 모두 꺼주면 외부적으로 자식으로서의 특징을 가지지 못하는 것처럼 보임.
- 하지만 Link는 연결 되어있기 때문에 Local Position & Rotation은 계속 변하게 됨.
Inherit와 Reset Scale
Inherit
- 상속(Inherit)의 특징은 부모가 이동, 회전 또는 스케일의 변화가 발생할 때 결과적으로 자식의 위치와 각도와 크기가 달라져 보이지만 자식의 Local 값에는 아무런 변화가 발생하지 않는다. 외부적으로 달라져 보이기만 하는 것이다.
- 복잡한 Link 연결 구조에서의 Non Uniform Scale에 관련된 문제는 Reset-Scale 기능으로 해결할 수 있다.
- 부모의 Non-Uniform Scale과 자신의 Non-Uniform Scale이 합쳐지면 예상하지 못한 Transform이 발생 할 수 있음.
Inherit Option을 모두 껐을 때, Link가 연결되는 순간 자식(Child)의 Local 값 변화
- 부모의 Scale 값은 자식의 Local Scale에 영향을 주지 않음.
- 부모의 Position과 Rotation 값은 자식의 Local Position과 Local Rotation에 영향을 줌.
Inherit Option을 모두 껐을 때, 부모(Parent) Transform이 달라질 때 자식(Child)의 Local 값 변화
- 부모의 Position, Rotation, Scale 등 Tranform 변화는 '겉으로 보기에' 자식에게 아루먼 영향을 주지 않음.
- 부모의 Position, Rotation 변화는 자식의 Local Position과 Local Rotation을 변화 시킴.
- 부모의 Scale 변화는 자식의 Local Scale 값을 변화시키지 않음.
Reset Scale
- 복잡한 Link 관계에서의 Local Transform 값의 변화를 이해하는 것을 쉽지 않기때문에, 일반적으로 Bone에 Scale 값을 주지 않는다.
- Rigging을 마무리하고 모든 Bone의 Scale 값을 초기화 시키기 위해 Bone Tools의 Reset Scale을 눌러준다.
Reset Stretch
- 아래 이미지에서 빨간 Bone은 X축으로 Scale을 늘려서 크기를 키운 것이고 파란 Bone은 Freeze Length Option을 끄고 자식 본을 이동시켜서 늘린것이다.
- 파란 Bone의 경우엔 Scale은 변화가 없이 Stretch Factor 값만 변화한 상태로 크기가 변했는데, Scale을 변경할 경우 자식에게 상속이 되어 예상할 수 없는 문제가 발생할 수 있는 반면에 Stretch Factor 값은 상속 되지 않는다.
(근육과 같이 늘어나야하는 Rigging에서 사용하기 좋음) - Rigging을 완료한 후에는 Reset Stretch를 눌러 Stretch Factor 값을 1로 초기화 시켜줘야 한다.
또한, 게임엔진에서 Stretch가 적용 되는지도 확인이 필요하다.
- ObjectTM(Object Transform) = ObjectOffsetTM * StretchTM * NodeTM
즉, Object의 Transform = Offset 값과 Stretch 값과 Node 값이 모두 반영되어서(곱해져서) 결정 됨.
- ObjectOffsetTM
Object Pivot으로부터 Object가 얼마나 떨어져 있는지를 결정하는 값
- StretchTM
Bone의 자식 이동에 의한 부모 Bone의 Scale 변화 값
- NodeTm
기본적인 Position, Rotation, Scale