변환과 Drag Conversion¶
OSA의 모든 행은 같은 객체지만, 모든 행이 같은 일을 할 수 있는 것은 아니다 — Harmony 자신의 모델에 없는 형태가 있기 때문이다. 이 페이지는 그 한계, Inspector가 그것을 보여주는 방식, 그리고 거기서 빠져나오는 방법에 대한 것이다.
Inspector가 모양을 바꾼다¶
프레임, art layer, subart layer를 선택하면 Inspector의 대부분이 사라진다:
| 섹션 | 드로잉 컨테이너 | 프레임 | Art layer / Subart | Frames 폴더 | 템플릿 |
|---|---|---|---|---|---|
| Item Properties | ✅ | ✅ | ✅ | 이름 잠김 | 이름 잠김 |
| Content Nodes | ✅ 전체 | ✅ 아트 필드만 | ✅ 아트 필드만 | ❌ | ❌ |
| Hierarchy Nodes | ✅ | ❌ | ❌ | ❌ | ❌ |
| Effects Nodes | ✅ | ❌ | ❌ | ❌ | ❌ |
약 올리려고 회색으로 남겨두는 것은 없다 — 숨긴다. 이 행이 앞으로도 갖지 않을 설정이기 때문이다.
왜: 프레임은 엘리먼트 안에 노출된 셀이다. 셀에는 peg도, 컴포지트도, 글로우도 없다. peg는 프레임 위의 드로잉 노드에 속한다. 그 블록들이 사는 행이 거기이고, 당신이 설정하는 행도 거기다.
한 단계 더 내려가도 마찬가지다: art layer는 드로잉 안의 레이어이고, subart layer는 그 레이어 스택 안의 이미지 하나다. 둘 다 Node View의 노드가 아니므로, 둘 다 노드 속성을 갖지 않는다.
비활성이 아니라 숨김
비활성 컨트롤은 "가질 수는 있는데 지금은 아니다"라고 말한다. 이 섹션들은 답이 "이런 종류의 행에서는 절대 아니다"이기 때문에 숨겨진다 — 그리고 OSA의 규칙은 이유 없는 회색 컨트롤은 버그라는 것이므로, 설명할 수 없는 것을 회색으로 두지 않는다.
각 종류가 담을 수 있는 것¶
부모 관계 규칙은 모든 드롭에서 강제되고, 거부는 언제나 자기 이름을 댄다:
| 자식 | 허용되는 부모 | 보게 될 거부 메시지 |
|---|---|---|
| 프레임 | Frames 폴더 | Frames must be in a Frames Folder |
| 프레임 안의 프레임 | — | BLOCKER: Frame inside Frame (Must be ArtLayer) |
| Frames 폴더 | 드로잉 컨테이너 | Frames Folder must be a child of a Drawing Container |
| Art layer | 프레임 | Art Layers must be children of a Frame |
| Subart layer | art layer 또는 다른 subart | Sub-ArtLayers must be children of an ArtLayer |
| 드로잉 컨테이너 | 프레임, art layer, Frames 폴더 안을 제외한 어디든 | Drawings cannot be inside Frames/Content nodes |
| Peg / Group / Composite / Backdrop | 콘텐츠 노드 안을 제외한 어디든 | … cannot be inside content nodes |
템플릿 (.tpl) |
프레임과 art layer를 제외한 어디든 | TPL Files cannot be inside Frames or Art Layers |
프레임 풀어주기¶
프레임은 잠긴 행이다: peg도 없고, 이펙트도 없고, 자식은 art layer만 될 수 있다. 그 이상이 필요할 때는 다시 드로잉으로 되돌려라.
Inspector에서 Frame 체크를 해제한다. 그러면:
- 프레임 번호들(
Start,End, 번호)이 기억되어, 다시 Frame을 체크하면 정확히 복원된다. - 그 행이 드로잉 컨테이너가 된다 — Hierarchy Nodes와 Effects Nodes가 다시 나타난다.
- 그 안에 Frames 폴더가 만들어진다.
- 가지고 있던 art layer나 subart layer는 그 Frames 폴더 안으로 옮겨진다.
마지막 단계가 흥미로운 부분이고, "아트를 어떻게 프레임으로 만들지?"에 대한 답이다:
프레임을 드로잉으로 변환하면 그 아트가 프레임이 될 수 있게 풀려난다.
프레임 안에 갇혀 있던 art layer들이 이제 Frames 폴더 안에 앉아 있고, 그곳이 바로 프레임이 사는 곳이다. 거기서 각각이 제 몫의 프레임이 될 수 있다.
Frame을 다시 체크하면 반대가 일어난다: Frames 폴더가 제거되고, 자식들이 위로 올라오며, 기억해둔 번호가 돌아온다.
Art layer → 프레임, 그리고 뒤따르는 승격¶
art layer에서 Target Layer 체크를 해제하면 프레임으로 변환된다:
- art layer 타입이 지워진다.
- 그 행이 다음으로 사용 가능한 프레임 번호를 갖는다 — 기존 노출과 충돌하지 않는다.
- 그 subart layer들이 art layer로 승격되며, 부모가 가지고 있던 타입을 물려받는다.
외워둘 만한 것은 세 번째 단계다. subart layer는 "art layer 스택 안의 이미지 하나"다 — 그 부모가 art layer이기를 그만두는 순간 그 설명은 의미가 없어진다. 그래서 자식들이 스스로 art layer가 되고, 부모가 지니고 있던 타입을 아래로 재귀적으로 이어받는다.
전체의 역방향: Drag Conversion을 켠 채 프레임을 다른 프레임이나 art layer 위에 떨어뜨리면 다시 art layer가 된다 — 이전에 가졌던 타입을 복원하고, 가진 적이 없으면 LA가 된다.
타입은 잃지 않고 보관된다
변환이 art layer 타입을 떨어뜨릴 때 OSA는 그것을 보관한다. 되돌려 변환하면 모든 것이 Line Art로 뭉개지는 대신 원래 레이어가 돌아온다.
Drag Conversion¶
Browser의 Settings 섹션에 있는 Drag Conversion 체크박스가 드롭이 무엇을 의미하는지 결정한다. 기본은 꺼짐이다.
-
꺼짐 — Strict 모드
잘못된 드롭은 거부되고, 메시지가 그것을 허용할 체크박스의 이름을 댄다:
Strict Mode: Cannot nest Frames. Enable 'Allow Drag Conversion'.
당신의 트리에는 당신이 요청한 형태만 들어 있다.
-
켜짐 — Conversion
떨어뜨린 행이 대상이 요구하는 것이 되고, OSA가 자기가 한 일을 말한다:
Converted ArtLayer to Frame
빠르고, 잘못 들어온 트리를 재구성하는 가장 빠른 방법이다.
무엇이 무엇으로 변환되는가¶
| 드래그 | 대상 | Drag Conversion 켜짐일 때 |
|---|---|---|
| Art layer / subart | Frames 폴더 또는 드로잉 컨테이너 | 프레임이 되고, 다음 빈 번호를 받고, 그 subart layer들이 art layer로 승격된다 |
| 프레임 | 다른 프레임 또는 art layer | art layer가 되고, 보관해둔 타입(또는 LA)을 복원한다 |
어느 쪽이든 거부되는 것¶
두 가지 드롭은 체크박스 설정과 무관하게 무효다. 변환될 만한 합당한 대상이 없기 때문이다:
- 프레임을 subart layer로,
- art layer를 subart layer로.
모드 고르기¶
| Strict를 쓸 때 | Conversion을 쓸 때 |
|---|---|
| 아트를 배치하는 중이고 실수는 거부되기를 원할 때 | 잘못 들어온 트리를 재구성할 때 |
| 트리의 형태가 이미 맞을 때 | 드롭이 "이것이 되어라"를 의미하기 원할 때 |
| 깊은 트리에서 빠르게 작업할 때 | 프레임들 사이에서 art layer를 재정리할 때 |
둘 다 당신의 아트에 대해서는 안전하다: 계층이 바뀌었다는 이유로 버려지는 것은 없다. 바뀌는 것은 이례적인 드롭이 거부가 되느냐 변환이 되느냐다.
어떤 행이 아트를 지니는지는 개념을, 드래그 없이 구조를 바꾸는 동사는 Split & Merge를 보라.
