Dimensiones y Key Domains¶
Esta es la idea sobre la que está construida toda la herramienta, y cabe en una página.
Una pose se guarda en una dirección. Una dimensión es un componente de esa dirección.
Cómo se suman las dimensiones de una layer¶
Una pose layer keyea a través de tres cosas:
its own grid + its carrying control + its knob
Cada una aporta sus propios ejes, y se componen en una sola dirección:
| La layer | Suma | Chip |
|---|---|---|
| Un grid de 3 × 3, global, sin knob | 2 | 2D |
| La misma layer dentro del control Head | 2 + 2 | 4D |
| …keyeada a través de un knob de fonemas de 13 posiciones | 2 + 2 + 1 | 5D |
| …si ese knob fuera un grid de 3 × 3 en vez de eso | 2 + 2 + 2 | 6D |
Seis es el techo para una pose layer — su propio grid (como máximo 2), su control (como máximo 2), y un knob (como máximo 2) — y cuatro cuando la cadena es totalmente global: sin un control en juego no hay grid portador, y una layer global llega como máximo a sus propios 2 más un knob 2D. ORC hace cumplir el presupuesto en todo lugar donde pueda adjuntarse un eje — el selector de Knob oculta los candidatos que exceden el presupuesto, un arrastre se niega con el motivo, y Make Global se niega cuando el resultado pasaría de 4D. Una layer toma exactamente un knob, que es lo que limita la cadena.
El Outliner muestra el número en cada fila, y pasar el cursor deletrea la suma:
5D — total axes this layer keys across (own grid + carrying parent + each extra knob).
Dos casos no aportan nada:
- Una face de un control — es el grid del control, así que no keyea también a través de él.
- Una layer global — no hay nada por encima de ella. Un slider global lee
1D.
Drivers y look-ats llegan a ocho¶
Un driver o un campo de look-at agrega las dimensiones de su propio widget encima de la misma pila:
the widget itself (0–2) + the control (0–2) + the pose layer (0–2) + its knob (0–2)
Un pad driver 2-D keyeado a través de un control y una pose layer y el knob 2-D de esa layer es 8D. Nada te lo impide; tampoco nada te avisa.
| Widget | Sus propias dimensiones |
|---|---|
| Checkbox | 0 |
| Slider, Combo Slider | 1 |
| Pad 2-D (Continuous Grid) | 2 |
| El joystick de look-at | 2 |
Key domains¶
Un key domain es el conjunto de posiciones a través de las cuales algo está keyeado.
Las pose layers obtienen el suyo de dónde se ubican en el árbol — por eso arrastrar una layer cambia su comportamiento. Los drivers y los look-ats eligen el suyo explícitamente, con las mismas cuatro opciones y las mismas palabras:
| Domain | Un valor por… | Úsalo cuando |
|---|---|---|
| Global | Todo. No está keyeado en absoluto. | El valor nunca depende de la pose. |
| Control | Snap de control | Cambia con el turnaround — perspectiva, escorzo. |
| Pose Layer | Snap de pose layer, igual en cada pose del control | Pertenece a la expresión, no al ángulo. |
| Control + Pose Layer | El producto de ambos | Realmente varía con los dos. |
Pose Layer es el único domain que puede usar una layer global
Una layer con padre en Globals no tiene dimensión de control, así que Control y Control + Pose Layer no tienen nada contra qué keyear. ORC deshabilita esas opciones y lo explica.
Los dos modos de look-at eligen cada uno su propio domain, de las mismas cuatro — ver Look-At.
Cuando un domain no está disponible¶
ORC nunca oculta una opción que no puede ofrecer. La deshabilita y pone el camino a seguir en el tooltip:
| Deshabilitado | Porque |
|---|---|
Control, Control + Pose Layer |
"Pick a control first — Globals has no control grid to key across." |
Pose Layer |
"No pose layer to key across for this owner." |
Control + Pose Layer |
"No pose layer under this control — a Globals layer is not under it, so it cannot form the product. Pick the control that owns the layer, or key across the layer alone." |
| Todo menos Global, en un checkbox driver | "Checkbox drivers are Global only — pick another widget type to scope to a Control / Pose Layer." |
Si un domain queda no disponible temporalmente — todavía no elegiste el control — ORC recuerda tu elección y la restaura en el momento en que la dimensión vuelve a existir, en vez de degradarte en silencio a Global.
Direcciones de snap¶
Cada snap tiene un nombre, y se construye a partir de los domains de arriba, de izquierda a derecha: la posición del control, luego la de la layer, luego la del knob.
Las verás en el log, en las vistas previas de presets, y en la tabla de Unroll:
Un segmento por dimensión, de izquierda a derecha — el snap del control, luego el de la layer:
| Dirección | Se lee como |
|---|---|
R5C10 |
Una face de control en la fila 5, columna 10 |
UR0C4:P1LR1C2:P1RR2C0 |
Snap de control R0C4 · el grid izquierdo de la página 1 en R1C2 · su grid derecho en R2C0 |
UR1C2:P2LR0C1 |
Snap de control R1C2 · el grid izquierdo de la página 2 |
UBR1C2:P1LR0C0 |
Snap de control R1C2 en la face back · el grid izquierdo de la página 1 en R0C0 |
G:P1LR1C2 |
Una layer global — sin ningún componente de control |
UR1C2:K1R0C3 |
La pose propia de un knob — el control portador en R1C2, el knob en R0C3 |
UR0C4:P1LR1C2:W3 |
La pose de la página 1, en la posición 3 del knob de la layer |
Los prefijos:
U |
El snap del control portador (su unit) — sea cual sea el nombre del control. Un control Torso también keyea con U. UB es su face back. |
G |
Sin control en absoluto — una layer global, keyeada sin cabeza. |
P1L / P1R, P2L… |
Los grids izquierdo y derecho de la página 1, los de la página 2, y así sucesivamente — un esquema numerado por cada página. |
K1 |
Un knob autorando sus propias poses — K más su slot de eje, luego su snap. |
:W3 |
Posición 3 del knob de la layer. |
El nombre del control nunca aparece en una dirección — cada layer pertenece exactamente a un control, así que U siempre significa "mi control portador", sin necesitar numeración.
Por qué la letra es U y no C
U viene de la unit del control — el nombre interno que usa ORC para un control. La letra obvia sería C de control, pero C ya está tomada: es la letra de la columna dentro de cada snap. CR0C4 pondría dos significados distintos de C a cinco caracteres de distancia, y una dirección existe para leerse de un vistazo — así que el control keyea con U.
Por qué el :W de un knob 2-D es un número plano
Un knob 2-D direcciona su posición como un único índice — :W7 en un knob de 3 × 3 significa fila 2, columna 1 (fila × columnas + columna) — en vez de un snap R2C1. Eso es deliberado: el rig compuesto guarda cada posición de knob como un archivo de estado apilado con el propio formato de Toon Boom (stack/0.tbState, 1.tbState, …), y el índice plano es el nombre de ese archivo. La dirección se mantiene alineada con lo que señala.
Nunca tienes que escribir una dirección a mano. Pero cuando un mensaje, una vista previa de preset o la tabla de Unroll nombra una, así se lee.
Interpolación¶
Entre los snaps, ORC mezcla. Con Interpolation activado, la pose es la mezcla ponderada de los cuatro snaps que la rodean, con los pesos sumando siempre 1. Desactívalo y el snap más cercano simplemente gana.
Es un interruptor en tiempo de ejecución en el rig terminado, así que el animador elige entre un control suave o uno con pasos duros. Un snap sin keyear no es un agujero — es una posición que mezcla desde sus vecinos.
También es el único global. Cualquier otro interruptor incorporado existe por cosa sobre la que actúa, y solo cuando esa cosa existe: Mirror necesita una pose layer emparejada, Mirror All necesita más de un par, y Front ↔ Back necesita un control con ambas faces — cada control de dos caras componiendo su propio flip. La pregunta de Interpolation — ¿mezclar entre snaps, o dar pasos? — se hace una sola vez, sobre todo el rig; un checkbox de interpolación por layer o por control multiplicaría widgets sin agregar una sola decisión. Así que un solo checkbox gobierna todo, y se queda inactivo solo en un rig sin nada continuo que mezclar — todos drivers on/off, sin grids.
Lo que cuestan las dimensiones¶
Cada eje multiplica las poses disponibles, el tiempo que toma Compose, y la memoria que usa.
| Rig | Poses direccionables |
|---|---|
| Una layer de 3 × 3, global | 9 |
| …dentro de un control de 5 × 3 | 135 |
| …más un knob de 13 posiciones | 1.755 |
| …más una face Front y Back | 3.510 |
Nunca estás obligado a keyearlas todas. Pero una dimensión que agregas es autoría que estás prometiendo, y ORC te lo dirá a medida que suben los conteos:
1024 snaps — authoring this by hand is a big job, and capture/compose time grows with every keyed snap.
Advierte. No bloquea.
Lo único que realmente bloquea Compose¶
La dimensionalidad en sí nunca detiene un compose. Exactamente un conflicto estructural sí:
Dos knobs extra escribiendo el mismo nodo y el mismo canal no pueden sumarse. Cuando eso ocurre, la fila del Outliner en cuestión se enciende en rojo — nombre, chip e íconos — y Compose se niega hasta que lo resuelvas.
Todo lo demás es una advertencia.