Saltar a contenido

Widget Editor

Tutorial en video — próximamente

El Widget Editor es donde colocas los widgets del Master Controller sobre tu personaje: posición, escala, forma del handle, color, etiquetas.

Renderiza cada widget exactamente como Harmony lo dibuja — cuerpo transparente, borde negro, handle blanco, etiqueta sobre un chip oscuro. Lo que arreglas aquí es lo que recibe el animador.

Widget Editor

Solo autora apariencia y layout. El posado se queda en ORC.

Dos formas de abrirlo

Abierto desde Qué es
Dentro de ORC El botón Widgets en la barra superior — el mismo icono en ambos casos. Comparte el historial de deshacer de ORC — un solo documento, un solo historial.
Standalone El mismo icono en la barra de herramientas Octo Tools de Harmony, junto a la de ORC — o Octo_WidgetEditor() desde un script. Se abre sin ORC, carga el MC seleccionado en el Node View, y puede restilizar un MC que ya está compuesto — o uno nativo de Toon Boom.

Dentro de ORC, el editor bloquea la ventana de ORC detrás de sí — mira por qué — pero nunca bloquea Harmony, así que puedes seguir seleccionando nodos en el Node View mientras está abierto. En standalone no hay ventana de ORC que bloquear: el editor y Harmony son todo lo que hay.


La barra de herramientas

Toolbar

Ranura de MC (solo standalone)

MC: muestra lo que está cargado. Set carga el Master Controller seleccionado en el Node View; lo limpia.

Preview

▶ Preview alterna entre el modo Layout (arreglar cosas) y el modo Preview (probarlas) — con el botón, o simplemente Tab. En Preview, arrastrar un widget realmente maneja el rig, y las casillas de visibility group ocultan cosas de verdad — es el rig comportándose, antes de componer.

Salir de Preview restaura todo, así que la escena de Harmony nunca queda mutada.

Fondo

Cuatro muestras, más un selector de color personalizado:

Dark
Grey — el predeterminado
White
Transparent — muestra el tablero de ajedrez

El canvas invierte automáticamente el color de sus propias líneas: sobre un fondo claro, el grid y el frame de cámara se dibujan en oscuro en vez de en blanco.

Snap

Snap menu

Ítem Predeterminado Qué hace
Show grid Off Dibuja el field chart de animación — el clásico chart numerado N/S/E/W, que es a lo que se alinea "Snap to grid"
Snap to widgets On Alineación estilo Photoshop entre widgets
Snap to grid Off Ajusta por el centro del widget
Snap to guides On Ajusta a tus propias guías
Add horizontal guide / Add vertical guide Añade una guía cian en el origen
Clear guides Las elimina todas

Arrastra una guía fuera del canvas para eliminarla. Las guías se guardan con el rig, así que viajan en los presets.

El snapping muestra una línea de guía rosa mientras se mantiene.

Snapshot

Pon tu personaje detrás de los widgets para poder colocarlos contra el arte real.

Botón Qué hace
📷 Renderiza el personaje en el frame dado como fondo
📂 Carga un archivo de imagen en su lugar
Lo limpia

Opacity lo desvanece, 55 % por defecto.

Si el render vuelve vacío, la línea de estado dice por qué en vez de fallar en silencio: una escena (o un .tpl abierto directamente) sin nodo Display no tiene nada que el renderizador pueda alcanzar — añade uno, o importa el template a una escena — y sin una sesión de Harmony no hay desde dónde renderizar. Load… funciona en cualquiera de los dos casos.

El fondo no se puede mover ni escalar — a propósito

Está bloqueado al frame de cámara para que se mantenga como una referencia 1:1. Si pudiera moverse, dejaría de serlo. Solo la opacidad es ajustable.

⚙ y ? (solo standalone)

Preferencias y Ayuda. El editor embebido no las repite — esas son de ORC, una ventana más arriba, y dos engranajes en una misma ventana se leerían como dos almacenes de configuración distintos.


El canvas

Moverse

Gesto Efecto
Rueda Zoom hacia el cursor
2 / 1 Zoom in / out (los atajos propios de Toon Boom)
Ctrl+= / Ctrl+- Zoom in / out (reasignable)
Mantén Space y arrastra Pan
Shift+M Restablece la vista

El frame de cámara se dibuja como un rectángulo alrededor del origen, con una pequeña cruz en 0,0.

Seleccionar

Gesto Efecto
Clic en un widget Lo selecciona — y a su gemelo, en un par L/R vinculado, ya que el par actúa como uno solo
Ctrl+clic Alterna un solo ítem, sin arrastrar a su gemelo
Shift+clic Añade a la selección
Marquee desde espacio vacío Selecciona todo lo que la banda realmente toca
Ctrl+A / Ctrl+Shift+A Selecciona todo / limpia

Con varios seleccionados, arrastra cualquiera para mover el grupo — y el inspector se convierte en un editor por lotes: muestra los campos de apariencia que la selección tiene en común, y editar uno los escribe en todos los widgets seleccionados, incluso donde sus valores actuales difieren. Las entradas mirror-only se omiten (edita su gemelo L), y en modo Preview solo se ofrece la Visibility Layer.

Mover y escalar

Gesto Efecto
Arrastra el cuerpo Mover
Flechas Ajuste fino de posición
Shift+flechas Ajuste más fino
Mantén Shift mientras arrastras Bloqueo de eje
Arrastre con botón central Mueve toda la selección desde cualquier punto

Seleccionar un grid te da un gizmo de caja con ocho handles amarillos, más un anillo pivot naranja que puedes mover — Alt escala simétricamente respecto a él, Shift bloquea el aspecto. Un slider solo ofrece los handles de su eje largo, porque escalar su grosor no significaría nada.

Orientación del slider, y cómo leerla

El eje de autoría de un slider y su visualización son cosas separadas. La layer autora una lista de posiciones; aquí decides si esa lista se dibuja horizontal o verticalmente, y en qué sentido corre.

Esa libertad crea una pregunta — ¿qué extremo es el estado 1? — y los dos anclajes de extremo la responden:

Glifo Marca
El inicio del recorrido — estado 1
El final — el último estado

Rota el slider, invierte su sentido, y los anclajes lo siguen: el cuadrado siempre está donde empieza el conteo. Por eso un slider vertical invertido sigue siendo legible de un vistazo, aquí y en el navigator de ORC.

El glifo del handle tiene su propio gizmo cian pequeño, así puedes ajustar el tamaño de lo que el animador agarra de forma independiente de la caja en la que se mueve.

Dando forma a la retícula

Selecciona un grid y se vuelve amarillo — el color del editor para "esto es lo que estás moldeando" — y aparecen pequeños triángulos azules justo fuera de la caja, uno por línea interna, cada uno apuntando hacia el grid: ▼ sobre una columna, ▶ junto a una fila. Arrastra uno para mover esa línea — así es como haces una retícula que se ajusta al personaje en vez de una malla uniforme, y cómo una fila o columna consigue su propio ancho o alto.

Modificador Efecto
Shift Fino — un cuarto de velocidad
Ctrl Snap a 20 paradas lógicas a lo largo del recorrido
Alt Simétrico — la línea reflejada se mueve con ella

Los cuatro bordes son el marco del grid y nunca se mueven, y una línea interna se ajusta entre sus vecinas. Mientras arrastras, una pequeña píldora muestra el hueco a cada vecina justo sobre el canvas — con el snapping de Ctrl puedes leer los incrementos exactos a medida que caen, y con Alt la línea reflejada muestra su propio par, que es como se detecta una inconsistencia de espaciado izquierda/derecha. Los mismos valores aparecen como spin boxes en la tarjeta Grid Spacing del inspector, y un arrastre en el canvas se refleja de vuelta en ellos.

El hueco L/R

Un par vinculado seleccionado muestra un corchete rojo entre sus dos grids — visualmente distinto de los tiradores de línea azules a propósito. Arrastrarlo cambia el hueco simétricamente manteniendo el par centrado. Shift es fino; el hueco mínimo es 0.05.


El panel de Widgets

Widgets and inspector

El árbol de la derecha lista todos los widgets, en carpetas que puedes crear tú mismo. Organizan el editor, y cualquier carpeta puede arrastrarse — pero no son descartables: el árbol de carpetas se guarda con el rig, se compone dentro del MC, y te recibe otra vez cuando el editor standalone abre ese MC compuesto. El standalone puede mover lo que encuentra; solo crear carpetas nuevas es algo de tiempo de autoría.

Cada fila lleva un candado: un widget bloqueado se sigue pintando pero no se puede seleccionar ni arrastrar, y los clics lo atraviesan. Úsalo para fijar una sección terminada mientras trabajas alrededor de ella.

Un widget cuyo visibility group es Hidden aparece listado pero no dibujado: "Drag it out of Hidden to bring it back."

Debajo del árbol, el inspector muestra las propiedades del widget seleccionado, agrupadas en tarjetas:

Tarjeta Contiene
Settings Opciones por tipo
Transform Offset X/Y y Scale X/Y
Handle Tipo de handle — Circle, Square, Diamond, Triangle — y su tamaño
Colours Handle, borde del handle, líneas internas, contornos, etiqueta, fondo de etiqueta
Label Texto, fuente, tamaño, alineación, offset
Behavior Visibility group y comportamiento por tipo
Grid Spacing Las posiciones internas de fila/columna, plegadas por defecto

T recorre la forma del handle del grid seleccionado.

Los inlines necesitan outlines

Show inlines está deshabilitado a menos que Show outlines esté activo: "Inner grid lines need the outer border. Turn Show outlines on to enable this." Toon Boom no dibuja líneas internas sin el marco.

Seleccionar el gemelo mirror de un par muestra "Mirror of the L widget — edit its twin." — tú autoras un lado y el otro sigue.


Aplicando

Botón Qué hace
Apply Confirma el layout. Embebido, re-establece la línea base de la sesión; standalone, escribe los atributos de estilo directamente sobre el nodo MC en vivo en su lugar — sin recomponer, la identidad del nodo se preserva.
Cancel Descarta todo desde que abriste o aplicaste por última vez. Clic dos veces para confirmar.

Cerrar la ventana con ediciones sin aplicar pregunta primero: "You have unapplied changes. Discard them and close?"

Descartar rebobina el rig al momento en que lo abriste

Cancel — y Discard en el aviso de cierre — no es un borrador que retira tus ediciones de layout del historial una por una. Embebido en ORC, el editor toma una instantánea del rig completo cuando se abre, y descartar restaura esa instantánea: el rig vuelve exactamente al estado en que estaba en ese momento, que en el historial compartido es lo último que hiciste antes de abrir el editor.

El objetivo es el momento en que se abrió, no "las ediciones que recuerdo haber hecho". Apply mueve ese objetivo — después de aplicar, descartar más tarde te devuelve al apply, no a la apertura original.

Por esto el editor embebido bloquea la ventana de ORC detrás de sí. Guardar una instantánea del rig completo solo funciona si el rig no puede cambiar por debajo: editar en ORC mientras el editor sostiene una línea base previa a la edición haría que Cancel restaurara un estado que nunca quisiste perder. Harmony en sí sigue siendo completamente utilizable — lo necesitas para seleccionar nodos para la lista Hide Nodes de un grupo — porque el bloqueo alcanza solo a la ventana de ORC, no al host.

Deshacer es Ctrl+Z. Una ráfaga de ediciones se agrupa en un solo punto de deshacer en el propio historial de ORC — el editor no tiene una pila separada cuando está embebido. Deshacer llega hasta el momento en que abriste el editor en vez de retroceder hacia acciones de ORC no relacionadas: "Nothing to undo (widget editor)."


Qué puede seguir cambiando después de componer

El editor standalone restiliza un MC entregado en su lugar, y eso traza una línea dura a través del inspector — algunas cosas el MC compuesto las relee en vivo, y otras quedaron horneadas dentro de él:

Aterriza en Apply, sin recomponer Bloqueado hasta que recompongas en ORC
Todo lo visual — posición, escala, colores, etiquetas, formas de handle La Visibility Layer de un widget — a qué grupo pertenece
La lista Hide Nodes de un grupo — añade y quita libremente; la lista es simplemente plana ahí (una fila por ruta, sin nodos hijo ni Skip) El parenting de layers
El cascade / override Mode de un grupo

La línea no es una política — es cómo funciona el MC. Hide nodes y el cascade mode son atributos que el script del MC compuesto relee cada frame, así que escribir el atributo basta. La membresía de grupo y el parenting están horneados en el propio script generado, así que ninguna escritura de atributo puede moverlos. Los combos bloqueados se quedan visibles pero en gris, y dicen por qué: "Set at compose time — change it in ORC and recompose. The Widget Editor only edits what the live MC re-reads (style, hide nodes, cascade mode)."

Dos caras de la misma línea:

  • Un widget excluido de compose no aparece listado en absoluto en el standalone — nunca se compuso, así que no hay nada en el nodo que restilizar. El editor embebido lo mantiene en el árbol, porque ahí la exclusión sigue siendo una decisión en curso.
  • Un widget en un visibility group oculto sí se compuso — viaja dentro del MC, solo que invisible y no seleccionable — así que el standalone lo lista como a cualquier otro.

Restilizando un MC nativo de Toon Boom

El editor standalone también abre un Master Controller nativo — uno hecho por Toon Boom, que ORC nunca compuso.

Funciona distinto, y la diferencia es honesta:

Un MC de ORC Un MC nativo
Canvas Edición de layout completa Vista previa de solo lectura — sin arrastre, sin gizmos
Qué puedes cambiar Todo Solo los atributos de estilo que ese MC realmente declara
Al aplicar Estilo y layout Solo atributos de estilo

Un MC nativo no tiene ningún atributo de layout o posición de etiqueta — ambos están horneados en su propio script — así que no hay nada que arrastrar en el canvas. Lo que sí tiene es un conjunto de atributos de color y tamaño, y ORC los descubre en vivo desde el propio MC en vez de asumir una lista, porque Toon Boom cambia ese conjunto entre tipos de widget y entre versiones.

Aplicar escribe esos atributos en un solo paso de deshacer y no escribe los datos de ORC sobre el nodo. Un MC nativo se queda nativo.

Tres cosas que ORC hace con un MC nativo

  1. Restilizarlo aquí, sin convertirlo.
  2. Importarlo a un rig, donde aterriza como una pose layer ordinaria con sus estados como frames.
  3. Unroll de él, leyendo sus poses directamente del propio state manager de Toon Boom — incluyendo fusionar un MC front y un back en una sola línea de tiempo.

Relacionado