좌표
이것들은 부모 계층구조로부터 받은 상태 고정입니다.
상태 고정
이 기능은 주로 애니메이션에서만 사용됩니다.
3D에서, 오브젝트의 고정은 "zeroing out”(또는 ”dual transformation”)으로 간주됩니다. 왜냐하면 위치와 회전의 로컬 좌표값은 오브젝트의 위치 또는 방향의 변화 없이 각각 0으로 설정되고 크기는 1로 설정되기 때문입니다.(아래에서는 위치와 회전만을 참조할 것입니다.) 널 오브젝트를 만들 때 위치와 방향은 오브젝트와 동일하고 오브젝트는 널 오브젝트의 자식 오브젝트가 되고 이것은 앞과 같게 이뤄집니다. 이것은 R12이전에 사용되었던 문제 해결 방법입니다.
여러분은 다음과 같이 오브젝트르 고정할 수 있습니다: 내부적으로, 선택된 오브젝트의 좌표값을 가진 널 오브젝트가 생성됩니다. 이 좌표값들은 상태 고정탭에 복사되고 널 좌표로 옵셋됩니다. 즉, 어떤 수정은 원래 좌표값을 고정 좌표로 만듭니다.
그래서 이것을 어디에 사용할 수 있을까요? 설명하기 위해서 우리는 기본으로 시작하겠습니다:
이 씬은 2개의 오브젝트를 포함합니다: Arm 2는 위 그림에서 보여지듯이 로컬 좌표값을 가지고 있고 Arm 1의 자식 오브젝트입니다. 속성 관리자에서 보여지는 좌표값은 항상 로컬 좌표값입니다.(계층구조에서 부모 오브젝트의 좌표시스템의 영향을 받습니다.) 지금까지는 좋습니다.
이제 Arm2가 X축 방향으로 45°회전하기를 원합니다. 일반적으로 2개의 키프레임을 적용해서 회전하는 밴드를 사용해서 오브젝트를 회전시킵니다:
그 결과는 위 그림의 가운데와 같이 보입니다. 하나의 축 중심으로 회전해도 모든 세 축이 수정됩니다. 이것은 부모 오브젝트의 좌표 시스템이 (Arm 1) 로컬 좌표축으로부터 다른 방향을 하고 있기 때문에 발생합니다. 종종, 이것을 피할 수 없습니다. 타임라인에서, 수정되어야 하는 세 개의 F-Curves가 쉽지가 않습니다. 게다가 우리 예제는 또한 애니메이션 Gimbal lock을 제공합니다. (쿼터니언 회전)참조), 이것은 팔의 이후 회전 결과입니다.
이 모든 불리한 결과들은 애니메이션하기 이전에 상태 고정을통해 피할 수 있습니다. 이것은 위치, 크기, 회전 값들을 같은 이름으로 복사하고, 각각 초기값인 0와 1로 설정합니다.
이것은 아래와 같은 이점들이 있습니다:
모두 상태 고정 명령은 모든 좌표값들을 고정시킵니다. (위치, 크기, 회전) 즉, 모든 좌표값은 0으로 설정됩니다.
기본 좌표는 고정 좌표로 변환됩니다. 고정좌표는 모두 0으로 설정됩니다.
이것들은 부모 계층구조로부터 받은 상태 고정입니다.
쿼터니언
확실히 예를 들어 캐릭터 애니메이션과 함께 무서운 짐벌락에 대해 들어보셨거나, 개인적으로 경험해보셨을 것으로 생각됩니다!
짐벌락은 헤딩 H과 뱅킹 B이 같은 효과를 가지는, 회전 값이 P +/- 90°를 가질 때 발생합니다. 그 결과 이 축들중 하나를 모두 잃게 되고 아주 작은 회전에서도 큰 회전 이동이 발생합니다.
회전 애니메이션에서만 동작하는 쿼터니언 기능이 도움이 될 수 있습니다.
기본값으로, Cinema 4D는 오브젝트의 회전을 보간하기 위해 오일러 회전을 사용합니다. (오일러: 분리 회전(HPB), 유클리드(오른쪽-각도) 3D 공간을 위한 자이로 시스템).
오일러 회전의 개별 컴퍼넌트들은 개별적으로 보간되는데, 이것은 예를 들어, HPB (0, 0, 0)과 HPB (60, 60, 60)에서 평균값인 HPB (30, 30, 30)이 되는 것을 의미합니다. 0, 0, 0에서 30, 30, 30을 거쳐 60, 60, 60으로 스윙하는 것은 뷰포트에서 테스트할 수 있는 가장 짧은 경로를 필요로 하지 않는 다는 사실.
필요로 하는 것은 경로를 수동으로 애니메이션을 해야 할 경우, 사용자가 어떻게 하더라도 A에서 B로 가장 짧은 경로를 가지는 보간입니다.
이것이 정확하게 쿼터니언이 하는 일입니다. 쿼터니언은 0, 0, 0에서 60, 60, 60으로 경로를 35.104 °, 22.83 °, 35.104 °를 경유해서 가집니다.
쿼터니언은 불필요한 동작을 없애서 짐벌락을 피합니다.
쿼터니언 애니메이션을 기본적으로 모든 오브젝트들에 왜 적용하지 않는지 궁금하실 수 있습니다. 그 이유는 쿼터니언 보간 역시 단점을 가지고 있기 때문입니다. 회전할 때 변화가 180°보다 적을 경우 쿼터니언은 잘 동작합니다. 이 값을 넘게 되면, 문제들이 발생할 수 있는데 쿼터니언은 항상 가능하면 가장 짧은 경로를 찾으려고 하기 때문입니다.
다음 예제를 보세요:
쿼터니언 회전 옵션을 활성화하여, 그 오브젝트에 쿼터니언 애니메이션을 활성화합니다 (키프레임 값들은 동일하며 값들 사이의 보간이 그에 따라 변경됩니다). 이 옵션이 해제되면, 오일러 애니메이션 방식이 사용됩니다.
쿼터니언 보간은 로컬 회전 트랙에서만 동작하며 고정 좌표에서는 동작하지 않음에 주의하세요(모두 상태 고정 참조).
각각의 쿼터니언 보간 옵션은 임시적으로 보간에 영향을 주는데 사용될 수 있는 키프레임 속성에서 사용할 수 있습니다.
오일러 애니메이션들과 다음과 같은 차이가 발생합니다:
쿼터니언 애니메이션은 언제 사용하고 사용하지 말아야 할까요?
쿼터니언 애니메이션은 다음의 경우에 사용되어야 합니다:
쿼터니언 애니메이션은 다음의 경우에는 사용되어선 안됩니다:
이 버튼은 각각의 세가지 기본 좌표를 개별적으로 고정하는데 사용될 수 있습니다: