애니메이션 파일 (.anm)¶
.anm은 일상적인 전송 수단입니다. 애니메이션을 실어 나르고 — .pvt가 담는 모든 것까지 그 옆에 접어 넣습니다.
| 담는 것 | |
|---|---|
| Keyframe | 위치, 회전, 스케일 — export된 범위 안에서 프레임 단위로 |
| 보간 | 키마다 BEZIER, LINEAR, 또는 CONSTANT |
| Bezier handle | 절대값, 축별로 |
| rest pose | 각 항목의 parent, pivot, rest rotation — .pvt 내용이 접혀 들어간 것 |
| 프레임 범위 | 대상 쪽이 무엇을 받았는지 알 수 있도록 |
| 카메라 | 렌즈, clip plane, offset, roll, 기본 플래그 |
| rig 태그 | 여러 캐릭터가 있는 씬이 분리된 채로 유지되도록 |
뒤에서 네 번째 행이 중요한 대목입니다:
.anm 하나가 rig 전체를 그리고 애니메이션까지 다시 세웁니다
각 항목이 자신의 parent와 rest pose를 지니고 있기 때문에 .anm은 자족적입니다. 누군가에게 .anm 하나만 건네주면, 그 사람은 빈 씬에서 Create Rig를 눌러 동작하는 애니메이트된 스켈레톤을 얻을 수 있습니다. .pvt를 함께 보낼 필요가 없습니다.
Export하기¶
- 보내고 싶은 것을 선택합니다 — 카메라가 있다면 카메라도 함께.
- Animation Files (.anm) → Export, 그다음 +로 스캔해 넣습니다.
- Rig 열을 확인합니다.
- Start와 End를 설정하거나, Scene range를 누릅니다.
- Save As…, 그다음 Export Animation.
프레임 범위가 중요합니다¶
범위 안의 프레임만 샘플링됩니다. 범위를 촘촘하게 잡으면 파일이 작아지고 export도 빨라집니다. 반대로 액션의 끝을 놓치는 범위는 샷을 소리 없이 잘라냅니다. Scene range가 안전한 기본값입니다.
범위는 파일에 기록되므로, import 쪽의 요약 줄이 받는 사람에게 정확히 무엇을 받았는지 알려줍니다.
키에서 "export됐다"는 것의 뜻¶
OTS는 모든 프레임을 무작정 샘플링하지 않습니다. 어느 채널에서든 실제로 키가 잡힌 프레임을 모으고, 샷의 경계를 정하기 위해 범위의 첫 프레임과 마지막 프레임을 더한 뒤, 그 각각에서 transform을 평가합니다.
이 평가는 world matrix bake를, 가장 가까운 export된 조상 기준으로 상대화한 것입니다. rig의 절반만 export해도 일관된 결과가 나오는 이유가 바로 그것입니다: 손은 export하고 그 위의 팔뚝은 하지 않았다면, 손의 키는 위쪽에서 실제로 export된 것을 기준으로 도착하고 포즈는 맞아떨어집니다.
샷 단위로 전송이 단방향인 이유이기도 합니다. 반대편에 도착하는 것은 bake된 transform이지, 그것을 만들어낸 deformer나 constraint나 expression이 아닙니다.
Import하기¶
파일까지 Browse…합니다. OTS는 즉시 그 안의 모든 항목을 여러분의 씬과 대조하고 이렇게 보고합니다:
3 PEGs — 3 matched | 1 camera | Frames 1-60
모든 행에는 체크박스가 있습니다 — 원하지 않는 것은 체크를 해제하세요. 호박색으로 칠해진 행은 이 씬에서 매치를 찾지 못한 것입니다. 매치 트리를 참조하세요.
그다음 세 가지 동작 중 하나를 고릅니다.
Apply to PEGs / Apply to Joints¶
체크된 매치된 행 위에 애니메이션을 기록합니다. 아무것도 만들지 않고, 매치되지 않은 것은 건드리지 않습니다.
이쪽에 이미 rig이 존재할 때 원하는 동작입니다 — 앞서 .pvt로 세웠거나, 이름이 맞아떨어지도록 여러분이 직접 만든 rig일 때요.
Harmony에서는 Apply가 peg의 authoring 모드를 덮어씁니다
기존 Harmony peg에 적용하면, 그 peg에 붙은 3D-path나 quaternion-path 컬럼의 링크를 끊고 채널이 분리된 새 bezier 커브를 기록합니다. 값은 정확하고 커브도 편집 가능하지만, 3D path 위에서 authoring됐던 peg은 이후 더 이상 그렇지 않게 됩니다.
이건 의도된 것입니다 — 임의의 들어오는 커브를 표현할 수 있는 유일한 방법입니다 — 하지만 손수 만든 peg에 대고 실행하기 전에 알아둘 만한 사실입니다.
Create Rig¶
파일에 접혀 들어간 rest pose로 스켈레톤을 세우고 동시에 애니메이션까지 한 단계로 적용합니다. 빈 씬을 위한 버튼이며, .anm에 짝이 되는 .pvt가 필요 없는 이유이기도 합니다.
세워지는 결과물은 Build Skeleton과 동일합니다 — Maya에서는 joint, Blender에서는 rig당 armature 하나, Harmony에서는 peg를 담은 래퍼 group — 그 위에 키가 적용된 상태로요.
Create Cameras¶
파일이 실어 온 카메라를 렌즈와 clip plane까지 함께, 그것을 애니메이트하는 항목에 붙여 만듭니다. 파일에 카메라가 없으면 비활성화됩니다. 카메라를 참조하세요.
호박색 행은 Create Rig 후에도 호박색으로 남습니다
rig을 만들어도 목록이 다시 칠해지지는 않습니다 — 지금 보고 있는 매치 상태는 Browse했던 시점의 것입니다. 같은 파일에 대해 Browse…를 다시 누르면 매칭이 재실행되어 행들이 해소되는 것을 볼 수 있습니다.
.pvt인가 .anm인가?¶
.pvt |
.anm |
|
|---|---|---|
| rest 스켈레톤 | ✅ | ✅ |
| parenting | ✅ | ✅ |
| 카메라 | ✅ | ✅ |
| 애니메이션 | — | ✅ |
| Bezier tangent | — | ✅ |
| 프레임 범위 | — | ✅ |
| 맨바닥에서 rig 세우기 | ✅ | ✅ |
솔직한 요약: .anm은 상위 집합입니다. .pvt는 샷을 붙이지 않고 스켈레톤만 넘기고 싶을 때를 위해 존재합니다 — 실재하는 필요이긴 하지만, 덜 잦은 필요일 뿐입니다.