아웃라이너 트리¶
아웃라이너가 곧 리그입니다. 창의 다른 모든 것 — Navigator, Editor, 그리고 Compose 버튼이 준비되었는지 판단하는 근거 — 는 여기서 선택한 것을 읽어옵니다.
구조¶
이 컬럼은 세 가지가 쌓인 구조입니다: 툴바(+와 −), 필터 바(디스플레이 모드, 검색, 깔때기 아이콘), 그리고 트리 자체.
"Outliner"라는 제목은 없습니다 — 툴바가 곧 이 컬럼의 이름입니다.
+ 메뉴¶
+를 클릭하면(또는 트리의 빈 공간을 우클릭하면) ORC 어디서나 동일한 메뉴가 열립니다. 이 메뉴는 세 그룹으로 나뉩니다:
| Item | 생성되는 것 |
|---|---|
| Pose Layer | 빈 pose layer. 새 layer는 global로 태어납니다 — control 위로 드래그하면 그 안에 중첩됩니다. |
| Control | 이름이 New Control로 지정된 빈 control이며, 인라인 이름 변경이 곧바로 열립니다. |
| Look-At | look-at 노드. Look-At 참고. |
| Driver | driver이며, 대화상자 없이 Driver 에디터로 곧바로 연결됩니다. |
| Constraint | constraint이며, Constraint 에디터로 곧바로 연결됩니다. |
| Visibility Group | 루트 레벨의 그룹으로, Hidden의 형제입니다. (다른 그룹 안에 중첩하려면 부모 그룹을 우클릭하고 New Visibility Group Inside를 사용하세요.) |
| Import MC | Harmony의 Node View에서 현재 선택된 Master Controller를 새 layer로 가져옵니다 — 그 grid, 작성된 프레임, target들까지 함께 따라옵니다. Re-editing a Composed MC 참고. |
−는 선택 항목을 제거합니다. 리그에 layer가 하나도 없으면 비활성화됩니다.
두 개의 섹션¶
트리의 최상위 레벨은 언제나 정확히 두 개의 헤더로 구성됩니다:
Rig — 리그 그래프의 레벨 0입니다. control들을 담고 있으며, 그것들과 나란히 어떤 control에도 속하지 않는 모든 것 — global pose layer, global knob, global driver, constraint, global look-at — 도 함께 담습니다. layer를 Rig 헤더에 드롭한다는 것은 "어떤 control에도 속하지 않음"을 의미합니다.
Visibility Groups — 그룹 계층 구조입니다. 기본값으로 접혀 있습니다.
두 헤더 모두 선택, 이름 변경, 삭제가 불가능하지만 드롭은 받을 수 있습니다.
행 읽기¶
모든 행은 한 쌍의 글리프를 가집니다: 왼쪽의 role glyph와 오른쪽의 type glyph입니다. role은 이것이 어떤 종류의 것인지를 말하고, type은 어떤 형태의 widget인지를 말합니다.
Role 글리프¶
| Glyph | 역할 |
|---|---|
| Control | |
| Pose layer | |
| Knob — dimension의 소스로 사용되는 layer | |
| control 자신의 knob | |
| Look-At | |
| Driver | |
| Constraint | |
| Visibility Group | |
| 영구적인 Hidden 그룹 |
유형 글리프¶
| Glyph | 유형 | 의미 |
|---|---|---|
| Combo Slider | 1차원, 이산형 — 각 틱마다 멈춥니다 | |
| Continuous Slider | driver 전용 | |
| Combo Grid | 2차원, 이산형 | |
| Continuous Grid | driver pad와 look-at | |
| Checkbox | driver |
아이콘은 스스로 설명합니다
내부 선이 바로 snap이 멈추는 지점입니다. continuous 유형은 정확히 discrete 쌍둥이에서 그 선을 뺀 것입니다. 이것을 한번 보면, 범례 없이도 어떤 행의 형태든 읽을 수 있습니다.
두 번째 열¶
기본값인 Dimensions 모드에서, 오른쪽 열은 그 행이 몇 개의 axis에 걸쳐 key를 넣는지 보여줍니다. chip은 회색이며, 한 가지 예외가 있습니다:
| Colour | 의미 |
|---|---|
| Grey | 정상. |
| Red | compose 차단 요소 — 두 개의 extra knob이 동일한 노드와 채널에 쓰기 때문에 합산할 수 없는 경우입니다. 해결하기 전까지 Compose가 거부됩니다. |
빨강은 chip에만 국한되지 않습니다: 이름, chip, 두 글리프 모두를 포함한 행 전체가 다시 칠해집니다 — 이것이 유일하게 출시를 막는 상태이기 때문입니다.
pose layer는 자신의 axis 합을 있는 그대로 보여줍니다 — 자신의 grid, 그것을 담고 있는 parent, 그리고 각 extra knob까지.
chip 뒤에, 행은 하나의 trailing glyph를 가질 수 있습니다:
| Glyph | 의미 |
|---|---|
| control이 Front와 Back face를 모두 가진 경우 — turnaround입니다. | |
| pose layer가 L/R mirror 쌍을 가진 경우입니다. 둘 이상이면 작은 위첨자 숫자가 추가됩니다. | |
| Σ | layer 또는 driver가 가산적으로(additively) 합성되는 경우입니다 — 그 key들은 절대값이 아니라 neutral로부터의 델타입니다. |
mirror 글리프와 Σ는 하나의 슬롯을 공유하며, Σ가 항상 우선합니다.
어떤 chip이든 호버하면, 툴팁이 전체 합을 말로 풀어서 보여줍니다. 예: "5D — total axes this layer keys across (own grid + carrying parent + each extra knob)."
핀¶
control, pose layer, knob은 각각 자신만의 navigator를 가지므로, 두 번째 열의 맨 오른쪽에 작은 push-pin을 가집니다.
| Glyph | 상태 |
|---|---|
| Pinned — 채워진 머리 | |
| 고정되지 않음 — 빈 머리, 더 어두움 |
클릭하면 핀을 토글할 뿐, 다른 일은 하지 않습니다 — 행을 선택하거나 드래그를 시작하지 않습니다. Navigator 참고.
트리가 중첩되는 방식¶
행의 parent를 직접 선택하지 않습니다; ORC는 그 노드가 실제로 무엇에 걸쳐 key를 넣는지에 따라 이를 도출합니다. Dimensions 모드에서는:
- global 상태의 free layer는
Rig아래 레벨 0에 위치합니다 — 단, 어떤 knob에 걸쳐 key를 넣는 경우는 예외이며, 그 경우 해당 knob 아래에 중첩됩니다. - control의 Front / Back face는 control에 흡수되어 행으로 전혀 표시되지 않습니다.
- 같은 control 안의 knob에 걸쳐 key를 넣는 layer는 그 knob 아래에 중첩됩니다.
- 그렇지 않으면, control에 할당된 layer는 그 control 아래에 중첩됩니다.
- knob은 자신을 사용하는 대상의 위치를 그대로 따라갑니다 — 그 대상이 control 안에 있으면 knob도 그 control 안으로 들어갑니다.
- look-at은 연결된 pose layer가 있으면 그 아래에 중첩되고, 없으면 global인 경우
Rig아래에, 그것도 아니면 자신의 control의 첫 번째 자식으로 들어갑니다. - driver는 자신이 무엇에 걸쳐 key를 넣는지에 따라 중첩됩니다: control, pose layer, 또는 global인 경우
Rig. - constraint는 항상 global 전용이며, 언제나
Rig의 직계 자식입니다.
노드의 소유자가 삭제되어도 그 노드는 사라지지 않습니다 — Rig로 되돌아가며, 거기서 보고 다시 재배치할 수 있습니다. parent가 사라졌다고 해서 숨겨지는 것은 없습니다.
선택하기¶
트리는 다중 선택이 가능하지만, 한 번에 하나의 행만 active 상태가 됩니다(더 밝은 슬레이트 색으로 강조되는 행). Editor는 선택 전체가 아니라 active 행을 따라갑니다 — 그래서 여덟 개의 layer를 선택해 삭제하더라도 Editor가 비워지지 않습니다.
- 이미 다중 선택 안에 있는 행을 Ctrl/Shift-클릭하면 그 행을 active로 만들 뿐, 선택 집합을 무너뜨리지 않습니다.
- 빈 공간을 클릭하면 모든 선택이 해제되고, Editor는 빈 상태를 보여줍니다.
- 이미 active인 행을 클릭해도 Editor는 다시 연결됩니다.
펼치기¶
Chevron은 펼쳐졌을 때 ▾, 접혔을 때 ▸이며, 행에 보이는 자식이 있을 때만 나타납니다 — 흡수된 face는 chevron을 얻지 못합니다.
| Gesture | Effect |
|---|---|
| chevron 클릭 | 그 행을 펼치기/접기. |
| Shift + chevron 영역에서 클릭 | 아래의 전체 가지를 펼치기/접기. |
| 이름을 더블클릭 | 인라인 이름 변경. |
| 이름 바깥을 더블클릭(예: 두 번째 열) | 펼침 상태 전환. |
이름 바꾸기¶
F2 또는 이름을 더블클릭합니다. control, pose layer, knob, look-at, driver, constraint, 그리고 커스텀 visibility group의 이름을 바꿀 수 있습니다. 섹션 헤더, 흡수된 face, 영구적인 Hidden 그룹은 이름을 바꿀 수 없습니다.
빈 이름으로 확정하면 기존 이름이 유지됩니다.
드래그 앤 드롭¶
드래그는 리그의 구조를 재조정하는 방법입니다. 행의 고스트가 커서를 따라다니며, 놓기 전에 실시간 툴팁이 그 드롭이 정확히 무엇을 할지 항상 알려줍니다.
두 가지 드롭 표시 방식이 있습니다:
- 행 안으로 — 행 전체에 걸친 점선 테두리 아래로 반투명한 파란색 채움.
- 행 사이로 — 작은 돌기가 달린 2px 파란 선. 돌기의 수평 위치가 제안되는 깊이를 나타내므로, 더 얕은 깊이로 놓으려면 왼쪽으로 드래그하세요.
| You drag | Onto | Result |
|---|---|---|
| Pose layer / knob | Control(중앙) | 그 안의 free layer가 됩니다. Alt를 누르면 Front, Alt+Ctrl을 누르면 Back. |
| Pose layer / knob | 다른 layer(중앙) | 그 layer가 이 layer의 knob이 됩니다. |
| Pose layer / knob | Rig 아래 행 사이 |
레벨 0 — head가 없는 global layer. |
| Driver | Control | 그 control의 grid에 걸쳐 key를 넣습니다. |
| Driver | pose layer | 그 layer에 걸쳐 key를 넣습니다. |
| Look-At | Control | 그 control의 key domain에 고정됩니다. |
| Look-At | pose layer | 그 layer에 걸쳐 key가 들어갑니다. |
| Visibility Group | 다른 그룹 | 그 안에 중첩됩니다. |
| Visibility Group | Visibility Groups 헤더 |
최상위 레벨로 이동합니다. |
일부 드롭은 거부되며, 항상 툴팁에 이유가 표시됩니다:
- "A driver can't sit under an empty knob — drop it on a control or a pose layer."
- "Checkbox drivers are Global only — pick another widget type to own this driver with a control."
- "A group can't nest inside itself."
Face를 지정하는 것은 파괴적입니다
Front나 Back을 지정하면 그 슬롯을 차지하고 있던 것을 대체합니다. 그래서 일반 드롭이 아니라 Alt 조합이 필요한 것입니다. ORC는 절대로 "첫 번째 빈 슬롯"을 대신 골라주지 않습니다 — 슬롯은 항상 명시적입니다.
Flat 디스플레이 모드에서는 아무것도 드래그할 수 없습니다; 표현할 계층 구조가 없기 때문입니다.
키보드¶
| Key | Effect |
|---|---|
| F2 | active 노드의 이름을 바꿉니다. |
| Delete | 선택 전체를 삭제합니다. |
| Ctrl+D | 선택 중 복제 가능한 행을 복제합니다. |
| Ctrl+C | 선택 항목을 트리 내부 클립보드로 복사합니다. |
| Ctrl+V | 붙여넣기 — 한 번 복사해서 여러 번 붙여넣습니다. |
driver, constraint, look-at, pose layer, control은 복제할 수 있습니다; visibility group과 섹션은 복제할 수 없습니다.
삭제하기¶
삭제는 잃을 데이터가 있을 때만 두 번 클릭으로 확인합니다. 그런 경우, 피드백 바가 노란색으로 바뀝니다:
Delete node "Eyebrows"? Keyed poses, drivers and look-at frames on them are removed. Click − again within 5s to confirm (Ctrl+Z to undo).
아무것도 key가 없는 리그에서는 삭제가 즉시 이루어집니다 — 항상 뜨는 확인창은 안전장치가 아니라 그냥 방지턱일 뿐입니다.
다중 삭제는 한 번만 확인하며, Ctrl+Z 한 번으로 되돌릴 수 있습니다.
삭제가 실제로 하는 일:
- control을 삭제하면 그 free layer들은 레벨 0으로 보내지고, face들은 삭제됩니다. 해방된 face는 다시 보이는 행이 됩니다.
- 루트
Headcontrol도 삭제 가능합니다 — 단지 비워질 뿐입니다. Delete Hierarchy는 노드와 그것이 소유한 것들을 함께 제거합니다. control은 자신의 face, knob, look-at, free layer를 소유합니다. visibility group은 오직 자신의 자식 그룹만 소유합니다 — 그 멤버들은 삭제되지 않고 재배치됩니다.- 삭제 불가: 두 섹션 헤더와 영구적인 Hidden 그룹.
Hidden은 유일하게 고정된 그룹입니다
All을 포함한 다른 모든 그룹은 이름을 바꾸거나 삭제할 수 있습니다. Hidden만은 남아 있는데, 모든 리그에는 도달할 수 없어야 하는 것들을 넣어둘 곳이 필요하기 때문입니다.
우클릭 메뉴¶
모든 종류의 노드는 자신만의 메뉴를 가집니다. 현재 다중 선택에 포함되지 않은 행을 우클릭하면, 다중 선택 메뉴가 아니라 그 행 고유의 메뉴가 나타납니다.
| Item | Notes |
|---|---|
+ Add Pose Layer |
이 control 내부에 layer를 생성합니다(global layer를 만드는 툴바의 +와 다릅니다). |
⤓ Unroll Poses… |
MC가 로드되어 있을 때만. Unroll 참고. |
Rename Control F2 |
|
Remove Control |
|
Delete Hierarchy |
control이 자식을 소유하고 있을 때만. |
Duplicate Control ▸ Structure only Ctrl+D |
face들 — grid, widget look, knob, back toggle — 을 비어 있는 target 목록과 함께 복제합니다. 이것이 위/아래 눈꺼풀 워크플로입니다: 형태를 복제하고, target을 다시 지정하세요. |
Duplicate Control ▸ Full (layers & targets) |
모든 것을 복제합니다: face, target, 소유한 pose layer, knob, driver, look-at을 새로운 key와 재매핑된 참조와 함께. |
Import MC ▸ Front Face / Back Face |
Harmony MC를 이 control의 face 슬롯으로 곧바로 import합니다 — face를 명시적으로 지명하는 것이지, "지금 활성인 어느 쪽 face"가 절대 아닙니다. Control 페이지의 [Set ▾] 메뉴와 같은 경로입니다. |
이것이 메뉴의 전부입니다 — control의 우클릭은 control 내부에서만 생성합니다. 루트 레벨 생성(global layer, 또 다른 control, driver…)은 툴바 +와 빈 공간에 있습니다. 거기서는 루트 레벨이 곧 의도한 바이기 때문입니다.
| Item | Notes |
|---|---|
Rename F2 |
|
+ Add Pose Layer |
|
Duplicate Pose Layer Ctrl+D |
구조와 target을 복제합니다. pose는 복사되지 않습니다. |
Make Global |
layer가 모든 head pose에서 합성됩니다. 현재 snap의 pose는 유지됩니다. 결과가 global 4D 예산을 넘게 되면 이유와 함께 거부됩니다 — 아래 참고. |
Move to… ▸ |
노드를 드래그하는 것의 메뉴 쌍둥이입니다 — 하나의 목록, 두 종류의 target이며, 각각 아웃라이너의 이중 글리프를 달고 있습니다. control은 layer를 다시 parent합니다(그 control의 pose마다 합성됩니다). pose layer나 knob은 이 layer의 axis가 됩니다 — layer가 그것에 걸쳐 key를 넣으며, 현재의 knob을 대체합니다(Knob picker와 같은 단일 axis 규칙). |
Remove Pose Layer |
layer가 두 개 이상 존재할 때만. |
Move to… 목록은 실제로 작동할 것만 제공합니다: 순환 없음, 다른 control의 knob 없음, 그리고 dimension 예산을 넘는 것도 없음 — layer의 상한은 체인에 control이 있으면 6D, 완전히 global이면 4D입니다. 이미 2D knob에 걸쳐 페이지를 넘기는 global 2D layer는 4D 체인이므로, 다른 global layer의 target으로는 절대 나타나지 않습니다. Dimensions & Key Domains 참고.
extra knob은 parent를 가진 진짜 layer이므로, 다른 pose layer와 마찬가지로 Make Global과 Move to… ▸를 가집니다. 그것을 사용하는 소비자들은 함께 이동하지 않습니다: global이 된다는 것은 "이 dimension이 공유 가능해진다"는 뜻이며 — 그것에 걸쳐 페이지를 넘기던 layer들은 제자리에 남아 계속 페이지를 넘깁니다. global layer들이 아직 페이지를 넘기고 있는 knob을 control 안으로 이동하는 것은 그 layer들의 이름을 밝히며 거부됩니다 — global layer는 global knob에만 걸쳐 key를 넣을 수 있고, 그 무엇도 조용히 다시 자리 잡지 않습니다.
control의 :W knob과 face는 여전히 이동 항목이 없습니다 — 그 위치는 control 자체이기 때문입니다.
| Item | Notes |
|---|---|
Rename F2 |
|
Duplicate Ctrl+D |
|
Mute / Unmute |
"Skip this driver at compose without deleting it (dimmed in the outliner)." |
Make Global |
어디서나 하나의 값 — snap별 keying이 없습니다. driver의 key는 삭제됩니다(key를 담아둘 pose axis가 더 이상 없으니까요). |
Move to… ▸ |
driver가 걸쳐 key를 넣을 수 있는 모든 것이며, 이중 글리프로 표시됩니다: control(Control scope — 그 control의 pose마다 key), 그리고 pose layer / knob(그 layer의 grid에 걸쳐 key; 소유된 layer는 자기 control의 pose마다도 key하고, global layer는 단독으로 key합니다). driver 노드를 드래그하는 것과 같은 깔때기입니다. |
Delete Driver |
checkbox driver는 언제나 global입니다 — 아무것에도 걸쳐 key를 넣지 않으니까요 — 그래서 Make Global과 Move to…는 그 이유와 함께 회색 처리되며, Behaviour 대화상자도 이를 반영합니다: driver가 scope된 동안에는 Checkbox를 선택할 수 없습니다.
| Item | Notes |
|---|---|
Rename F2 |
|
Duplicate Ctrl+D |
|
Mute / Unmute |
|
Delete Constraint |
| Item | Notes |
|---|---|
Rename F2 |
|
Make Global |
아직 global이 아닐 때. |
Move to… ▸ |
다른 control마다 하나의 항목이며, 이중 글리프로 표시됩니다(type 쪽 글리프가 1D control과 2D control을 한눈에 구분해 줍니다). |
Duplicate Ctrl+D |
|
Delete Look-At |
모든 look-at이 모든 제스처를 받습니다 — head의 첫 look-at도 마흔아홉 번째보다 특별할 것이 없습니다.
| Item | Notes |
|---|---|
Rename F2 |
Hidden에서는 비활성화됩니다. |
New Visibility Group Inside |
어떤 깊이에서든 중첩된 그룹을 만드는 유일한 방법입니다. |
Delete Visibility Group |
Hidden에서는 비활성화됩니다. |
Delete Hierarchy |
그룹이 실제로 하위 그룹을 갖고 있을 때만. |
Hidden에서는 비활성화된 항목들이 스스로 이유를 설명합니다: "Hidden is the permanent sink — every rig needs somewhere to hide nodes. Any other group can be renamed or deleted."
| Item |
|---|
Duplicate {n} node(s) Ctrl+D |
Delete {n} nodes |








