Saltar al contenido
Tórculo1.0 · borrador de trabajo

manim-saorín · SPEC-MESA-2.md · generada al construir

SPEC MESA v2 — especificación formal del formato `.mesa`

La especificación completa de la lengua tal como la implementa la referencia: gramática, vocabularios, semántica, IR, lint, herramientas y todo lo que entró después (§3.10 a §3.20: el aspecto, el cartel, la imagen que oye, la cámara, el proyecto portable, la vida, la lengua que enseña, el 3D, la toma partida, los géneros y el fútbol).

Época: MESA v2 beta · motor de referencia: manim-saorin 1.0.0b1 Revisión: 2 (2026-08-04) · estado: normativa


0 · Alcance, conformidad y notación

0.1 · Qué es este documento

La especificación formal y completa del lenguaje .mesa: su léxico, su gramática, sus vocabularios cerrados, la lógica con que se resuelve un pliego, el IR que produce y las herramientas que lo operan.

Es un documento de referencia, no de historia. La historia está en CHANGELOG.md y los planes en PLAN-B.md, PLAN-C.md, MESA-C.md y BETA-1.md. Sustituye a SPEC-MESA.md, que había crecido como un changelog con nombre de spec.

0.2 · Ley de autoridad

La documentación se enumera desde el parser, no desde la memoria.

Todo vocabulario cerrado de §4 está copiado de la estructura que lo declara en el código, y esa estructura aparece nombrada junto a la tabla. Si una tabla y el código discrepan, manda el código y este documento está roto. La tabla de precedencia (§5.2) se genera con mesa por-que --tabla.

Corolario operativo: un vocabulario sin tabla en §4 no es un vocabulario cerrado, es un agujero. Los no terminales del EBNF que no tienen tabla serían exactamente eso, y por eso §4 los cubre todos.

0.3 · Conformidad

Una implementación conforme debe:

  1. aceptar todo pliego que esta especificación declara válido;
  2. rechazar con error toda palabra fuera de un vocabulario cerrado (§4), sin extenderlo en silencio;
  3. producir el IR de §6 con los campos marcados obligatorio;
  4. aplicar la precedencia de §5.2 sin excepciones;
  5. ser determinista en el sentido de §5.3.5.

No está obligada a renderizar: mesa lee, mesa ir y mesa cuenta son conformes sin motor gráfico.

0.4 · Notación

EBNF con estas convenciones:

formasignifica
MAYÚSCULASno terminal
"literal"texto literal
A | Balternativa
[A]opcional
{A}cero o más
TEXTOcaracteres hasta fin de línea
NLfin de línea
IDENTidentificador (§2.5)
NÚMEROentero o decimal con punto, con signo opcional

Los literales se comparan NORMALIZADOS (§2.5): la forma canónica va sin tilde y el comparador acepta las dos. En este documento las palabras clave se escriben acentuadas, que es como se leen y como conviene escribirlas; el código las guarda sin tilde. ilustración e ilustracion son la misma palabra.

Excepción, y es lingüística: las palabras reservadas (§4.13) se comparan sin normalizar, porque en castellano la tilde diacrítica distingue palabras. el es un artículo reservado; él es un nombre de personaje perfectamente válido. Igual tu/tú, si/sí, mas/más.


1 · Modelo conceptual

1.1 · Qué es un pliego

Un pliego es un guion que se lee de arriba abajo como un texto y del que se deriva un vídeo. Si leerlo no es leer el vídeo, está mal escrito.

CONSTITUCIÓN ANTI-PARÁMETRO. El pliego dice cuentas humanas y maneras; los números los pone el motor.

Esa ley solo se sostiene porque los vocabularios son cerrados, y los vocabularios cerrados solo son tolerables porque el motor deriva. Las dos cláusulas se sujetan la una a la otra: quita cualquiera y esto se convierte en YAML con acentos.

1.2 · Los dos dialectos y el porcentaje pobre

dialectoquién lo escribe¿lleva cifras?
pobreuna personano
reveladomesa escribe, transpila.py, modo réplicasí, marcadas (máquina)

Porcentaje pobre = líneas de dramaturgia sin cifras / totales. Un pliego de autor sano vive ≥85 %. mesa lee lo imprime.

No cuentan —y cada exención tiene su razón—:

  • las secciones (§3.3): el taller es calibración de un oficio, y ahí los números son legítimos. La constitución gobierna el pliego, no el taller.
  • el cuerpo de un ver:: ver: votos — sí: 7 · no: 4 no declara un parámetro, declara el dato que la visualización dibuja. Penalizarlo sería castigar el único sitio donde los números SON el contenido.
  • los títulos de capítulo, los comentarios y el preámbulo de formato.

1.3 · Los cuatro estratos y el proscenio

estratoviveespaciobanda de z¿lo compone el resolutor?
FONDOpor secuenciasespacio-mesa−60…−30no
MUNDOhasta mutis o telónsuelo, marcas, ligaduras−20…0no — relacional
DOCUMENTOpor fraseszonas y slots, con reserva1…100sí
PROSCENIOmientras cruzaespacio-mesa101…200no
ANOTACIÓNcon su objetivoel objetivo9000+no

BANDAS en mesa.py.

El proscenio es lo que está entre la cámara y la escena: la rama que cruza en primer término. Va por encima del documento —si no, cualquier cartulina se dibuja sobre ella y la oclusión no ocluye— y por debajo de la anotación, porque un subtítulo no está en la habitación: está sobre la película.

La pertenencia se infiere del tipo y se corrige con una palabra (en el mundo:, en el documento:).

1.4 · Unidades

PLIEGO
 └─ CAPÍTULO           unidad de página y de render (una Scene propia)
     └─ ESCENA          unidad de MUNDO (mundo persistente entre planos)
         └─ CLIP        unidad de tiempo — un beat, un plano
             └─ LÍNEA   unidad de acción

Los capítulos se renderizan en paralelo, así que la continuidad entre ellos es dato serializado (estado_entrada, §6.2), nunca objetos vivos.


2 · Estructura léxica

2.1 · Codificación y líneas

UTF-8 sin BOM. Análisis orientado a línea: cada línea se clasifica por su prefijo. Solo cruzan líneas los bloques de sección (§3.3) y dentro: (§3.7.9). Las líneas vacías separan clips.

2.2 · Comentarios y digresiones

formaqué es¿llega al IR?
// textocomentario técnicono
( texto )digresión de autorsí, en digresiones
~ deriva: textoencargo al motorsí, en derivas

2.3 · El separador ·

El punto medio (U+00B7) separa campos. Es el único separador de campos.

2.4 · Las comillas latinas « »

El texto que va a pantalla se acota con «…» (U+00AB, U+00BB). Las comillas rectas no son equivalentes.

2.5 · Identificadores y normalización

IDENT = letras (con acentos y ñ), dígitos y _. Las claves de sección admiten espacios.

normaliza() en formato/vocabulario.py:

  1. minúsculas;
  2. espacios colapsados;
  3. _ ≡ espacio (toca_la_truca ≡ toca la truca);
  4. tildes fuera — la forma canónica va sin tilde.

Y la excepción de §0.4: las palabras reservadas se comparan sin normalizar.

2.6 · La marca (máquina)

Sufijo que declara que la decisión la tomó el motor. Afecta a autor_cabecera y a origen; no afecta al hash maestro (§5.3.4).


3 · Gramática

3.1 · El documento

PLIEGO   = PREÁMBULO { CAPÍTULO } [ FIN ] ;
PREÁMBULO = { LÍNEA-PREÁMBULO | SECCIÓN | COMENTARIO } ;
CAPÍTULO = CAB-CAPÍTULO { LÍNEA-UNIDAD | SECCIÓN } { ESCENA | CLIP } ;
ESCENA   = CAB-ESCENA { LÍNEA-UNIDAD | SECCIÓN } { CLIP } ;
CLIP     = CAB-CLIP { LÍNEA-CLIP } ;
FIN      = "==" "FIN" { "=" } { TEXTO } [ ">" "silencio" NÚMERO ] ;

LÍNEA-UNIDAD es la misma en capítulo y en escena (§3.5). Es lo que antes se llamaba LÍNEA-CAPÍTULO en un sitio y LÍNEA-ESCENA en otro: eran el mismo conjunto y tener dos nombres hacía que ARCHIVO a nivel de capítulo funcionara por accidente.

SECCIÓN es legal en los tres niveles —preámbulo, capítulo y escena—, que es lo que exige la precedencia de §3.3. Sin eso, la regla hablaría de un construcción que la lengua no sabe expresar.

Un pliego sin ningún == es un pliego servilleta (§3.9).

3.2 · Preámbulo

LÍNEA-PREÁMBULO =
    "MESA" [ "v" NÚMERO ] TÍTULO
  | "formato" CAMPO { "·" CAMPO }
  | "ARCO" ARCO
  | "MOTIVO" CITA [ "—" TEXTO ]
  | "ECO" IDENT "→" IDENT
  | "REPARTO" IDENT ":" TAMBOR [ "," VOZ ] [ "," "alias:" ALIAS { "·" ALIAS } ]
  | "PERSONAJE" IDENT "—" TEXTO
  | "MUSICA" RUTA { "·" CAMPO-MEZCLA }
  | "LETRA" RUTA
  | "PYTHON" RUTA
  | "ARCHIVO" CLAVE { "·" CLAVE }
  | "FANTASMA" ( "foto" | "texto" | "numeral" ) NÚMERO
  | "RELOJES" IDENT NÚMERO
  | "SONIDO" TEXTO ;

MESA v2 El puerto declara la época de la lengua. Si el pliego pide una mayor que la del motor, es error (§7.1).

formato 16:9 · sala crema · tirada borrador — sala ∈ {crema, pizarra}; tirada ∈ {borrador, definitiva}.

El REPARTO es normativo para el diálogo (§3.7.1): un hablante que no esté declarado aquí o en PERSONAJE no es un hablante.

3.3 · Secciones

SECCIÓN       = BLOQUE | IMPORTACIÓN ;
BLOQUE        = "#" NOMBRE-SECCIÓN [ IDENT ] NL { LÍNEA-SECCIÓN } "#FIN" ;
IMPORTACIÓN   = NOMBRE-SECCIÓN RUTA ;
NOMBRE-SECCIÓN = "TALLER" | "MANO" | "BESTIARIO" | "REPARTO"
               | "MONTAJE" | "CASCADA" ;
LÍNEA-SECCIÓN = FAMILIA [ VALOR ] { "·" CAMPO } ;
CAMPO         = CLAVE ( " " | ": " ) VALOR ;

LEY DEL ESPEJO. Todo bloque escrito dentro del .mesa es idéntico en gramática al archivo que se importa en su lugar.

Invariante: efectivo(p) == efectivo(parte(p)) == efectivo(funde(parte(p)))

Las claves de varias palabras llevan dos puntos (por defecto: tijera), para sobrevivir a la ida y vuelta.

Precedencia, única y sin excepciones:

importado  <  inline del preámbulo  <  bloque de capítulo  <  bloque de escena

siempre por herencia parcial: una línea sobrescribe una línea.

Estado de cada sección:

secciónestado
TALLER · MANOnormativas — §4.10, §4.11
BESTIARIO · REPARTOnormativas — equivalen a PYTHON y a REPARTO del preámbulo
MONTAJE · CASCADARESERVADAS — §9.5

3.4 · Capítulo

CAB-CAPÍTULO = "==" TÍTULO { "·" ATRIBUTO-CAP } { "=" } ;
ATRIBUTO-CAP =
    "tensión" TENSIÓN | "nº" NÚMERO | "tambor" TAMBOR
  | "gigante" PALABRA | "plano fijo" PLANTILLA
  | "tramo" NÚMERO ("→"|"->"|"a") NÚMERO
  | "nocturno" | "diurno" ;

plano fijo toma una plantilla (§4.6), no una talla.

3.5 · Escena y líneas de unidad

CAB-ESCENA   = "--" TÍTULO [ "·" HORA ] "--" ;
LÍNEA-UNIDAD =
    "EJE" "de" IDENT "a" IDENT
  | "LUZ" DIRECCIÓN-LUZ { "·" ( DUREZA | "rasante" ) }
  | "MUNDO" MOVIMIENTO-MUNDO [ NÚMERO ] [ "·" SENTIDO ]
  | "FONDO" CLAVE { ARG } "·" LEJANÍA [ "·" NÚMERO ]
  | "DELANTE" CLAVE { ARG } [ "·" LEJANÍA ] [ "·" "cada" NÚMERO ]
  | "ESCENARIO" TEXTO
  | "ARCHIVO" CLAVE { "·" CLAVE } ;
  • EJE es la regla de los 180°. De ella se derivan el lado de cada quien, la dirección de las miradas y por dónde entra quien salió por el opuesto.
  • LUZ es una sola por escena y gobierna todas las sombras (§5.9).
  • MUNDO — ver §4.9 y la nota constitucional de §5.6.
  • FONDO monta multiplano: velocidad, color y z se deducen de la lejanía.
  • DELANTE siembra oclusión en el proscenio (§1.3).

3.6 · Clip

CAB-CLIP   = "*" ( FUNCIÓN | PLANO-CINE ) [ "·" AFECTO ] [ "(máquina)" ] ;
PLANO-CINE = { TALLA | ALTURA | FRENTE | MODO } [ "de" [ ARTÍCULO ] IDENT ] ;

Dos lenguas, las dos legítimas:

* prueba · seco                              ← función dramatúrgica
* corto contrapicado de tercero · nervioso   ← plano de cine

Con función, la plantilla se deriva (§4.6). Con plano, se declara la talla. Son dos ejes distintos y §4.5 explica por qué.

El artículo del sujeto se descarta: general de la carretera tiene por sujeto carretera, no la.

3.7 · Líneas de clip

Se clasifican por prefijo, y el prefijo gana siempre. El orden dentro del clip se respeta.

3.7.1 · Contenido, voz y diálogo

  "di" [ "(" VOZ ")" ] ":" TEXTO
  HABLANTE ":" TEXTO
  "letrero" [ "(" REGISTRO-LETRERO ")" ] ":" TEXTO { "/" TEXTO }
  "terminal:" TEXTO
  "canta:" TEXTO
  "contenido (máquina):" TEXTO
  TEXTO                                   ← prosa: contenido del beat

di: es la partitura del beat: de su locución sale la duración.

HABLANTE debe estar declarado en REPARTO o PERSONAJE, y no puede ser una palabra reservada (§4.13). Sin esa condición:

  • Y entonces: nada. se parsearía como un personaje llamado «Y entonces»;
  • un personaje llamado nota o pie eclipsaría una directiva.

Con ella, las dos cosas se resuelven y el diálogo hereda la voz del reparto. Las directivas se resuelven antes, así que un hablante homónimo de una palabra del parser no puede secuestrarla, y mesa índice lo dice.

3.7.2 · Piezas

  "pon:" TIPO-PIEZA CITA { "·" ATRIBUTO-PIEZA }
  ( "foto" | "recorte" | "prensada" ) ":" CLAVE
  "ver:" CLAVE-VIS [ "—" CUERPO ]
  "pica:" CLAVE [ "en" NÚMERO ]
  "python:" NOMBRE { ARG }
  ( "arriba" | "pie" | "nota" ) ":" TEXTO
  "marca:" GESTO-MARCA CITA

ATRIBUTO-PIEZA ∈ { NÚMERO (cuerpo de letra o alto), id RUTA, TAMBOR }.

El cuerpo declarado tiene autoridad declarado, la primera de la dimensión tamaño (§5.2).

3.7.2b · Vídeo real

  "clip" [ " de fondo" | " mudo" ] ":" RUTA [ "de" TIEMPO "a" TIEMPO ]
TIEMPO = [ MM ":" ] SS
clip: peli.mp4 de 12:04 a 12:11
clip de fondo: mar.mp4
clip mudo: archivo.mp4 de 0:30 a 0:36

Un clip es un recorte vivo: entra como Polaroid con celo, sus fotogramas corren al reloj de la escena y su audio se suma a la mezcla en su cronología exacta. de fondo lo pone a pantalla completa, mudo, bajo el contenido; mudo es un recorte sin audio.

UN CLIP DURA LO QUE DICE QUE DURA.

Un beat no se cierra mientras un clip suyo siga corriendo. Si el recorte declara doce segundos y la voz dura cuatro, el beat crece ocho —plano en silencio— en vez de cortar la película por la mitad. Lo que cede es la frase, no el plano. Vale para todos los clips, suenen o no.

mesa lee lo dice antes de rodar: el beat se alarga, con cuántos segundos, para que la consecuencia de ritmo se vea en el pliego.

> espera al clip no solo retiene el beat: le da el turno entero.

Un letrero ABRE su beat; un clip que espera lo CIERRA.

La narración del beat suena primero, se le deja un respiro de 0,30 s, y entonces entra el clip y corre completo. Antes el clip arrancaba con el beat y la voz seguía sonando encima del diálogo de la película: dos voces a la vez —medido en un solo vídeo, 107 s de narración pisada, y en un caso las dos diciendo la misma frase—. El beat dura, por tanto, voz + clip, no max(voz, clip).

Mientras corre el clip, la banda de subtítulos se retira: lo que se está diciendo lo dice el diálogo. La banda está exenta de la escoba, así que sin esto se quedaba colgada la última frase de la narración durante todo el clip.

LA REALIDAD NO SE REVELA. Un clip nunca pasa por el cuarto oscuro: no lleva semitono, ni duotono, ni troquel de tijera. La materia del collage es papel; el vídeo real es una ventana, y tratarlo como papel lo convierte en un pegote.

3.7.3 · Colocación

  "en" NÚMERO NÚMERO ":" LÍNEA-CLIP
  "en" PARTE-CUERPO "de" IDENT [ NÚMERO NÚMERO ] ":" LÍNEA-CLIP
  RELACIÓN OBJETIVO [ "a" NÚMERO ] ":" LÍNEA-CLIP
  RELACIÓN "cada uno:" IDENT TEXTO
  "juntos:" LISTA "—" DISPOSICIÓN
  ( "en el mundo" | "en el documento" ) ":" LÍNEA-CLIP

RELACIÓN ∈ bajo · sobre · junto a · delante de · detrás de

LEY DEL CUERPO. Casi nada va en coordenadas: la piedra va delante de sus pies. Traducirlo a coordenadas absolutas deja todo en el centro.

3.7.4 · Verbos de escena y mutación

  IDENT "con vista" VISTA
  IDENT "se encaja en" HUECO | "en sus huecos:" LISTA
  "recoge" IDENT | "clava" IDENT "en" IDENT
  ( "recorta" | "dobla" | "tapa" | "traslada" ) CITA [ … ]

3.7.4b · TABLAS — el teatro de papel como decorado quieto

  "TABLAS" { "·" ( HORA | "suelo" NUM | "a sangre" | "ancho" NUM
                 | "alto" NUM ) }
  "FONDO" CLAVE "·" LEJANIA
  "retira:" ( "el escenario" | "las tablas" | "el teatro" )

FONDO x · a media distancia está hecho para un viaje —capas que desfilan— y aplasta y tiñe cualquier cosa que no sea una tira de paisaje. Un patio no desfila: se monta con TABLAS, que arma un diorama —capas por lejanía, marco de tijera, sombra propia, el papel de la página alrededor— sobre el que actúan los títeres.

La HORA tiñe, no apaga: una noche de papel es la misma página con una cera azul encima, no un fundido a negro. Y las luces que expone cada decorado (.luces) se levantan por encima del velo, porque en un collage la ventana encendida es un papel claro pegado sobre la cera azul, no debajo.

Quien tiene pies se planta en el suelo. Un títere se posa por sus _pies, no por el centro de su grupo, y la escala del escenario se le aplica una sola vez. Sin eso los actores flotaban un palmo por encima de las tablas.

retira: el escenario baja el telón. Un escenario es persistente por diseño —ni la escoba ni > barre lo tocan, y así tiene que ser mientras se actúa encima—, pero no había forma de decir «ya»: el cuarto del niño se quedaba cuatro beats después de irse el niño, tapando lo que venía detrás.

3.7.4c · mapa: — la tesis como diagrama que crece

  "mapa:" ORDEN-MAPA
  ORDEN-MAPA = "territorio" CITA { "·" ( "con" LISTA | "grande"
                                        | "en" LUGAR ) }
             | "línea desde" CITA [ "hacia" CITA ]
             | "la línea de" CITA "llega a otro igual"
             | "la línea de" CITA "se hunde"
             | "la línea de" CITA "vuelve"
             | "conecta" CITA { "·" CITA }
             | "el círculo se abre"
             | "mira a" CITA
             | "en fila abajo" | "en columna izquierda"
             | "se va" ;

Un vídeo-ensayo sobre Deleuze y Guattari tiene cuatro conceptos que son figuras: el territorio (un recinto), la línea de fuga (sale del recinto por donde no había puerta), la reterritorialización (la línea llega a otro recinto: idéntico si es relativa, nuevo si es absoluta) y la abolición (la línea se enrosca en un agujero que se lo traga todo). mapa: los dibuja como UN diagrama que vive en la mesa y crece; cada orden es una animación de un par de segundos.

  • Sobrevive al render por capítulos: el compilador guarda las órdenes de los capítulos anteriores y el intérprete las reproduce sin animar al arrancar. «La línea de Iván llega a otro igual» en el capítulo 11 encuentra al Iván que nació en el 10.
  • Reserva su caja cada beat: los clips no aterrizan encima.
  • grande es para el territorio protagonista (cuando el mapa es lo único que hay que mirar); en columna izquierda deja la página de la derecha libre para la película.

3.7.4d · Las transiciones

  "> capítulo" CITA
  "> el clip se agranda y se va"

> capítulo «…» vacía la mesa, pone el título solo —serifa sobre banda rasgada, filete rojo— y suena la página; se sostiene lo que se tarda en leerlo. > el clip se agranda y se va espera a que el último recorte termine, lo crece al lienzo, lo sostiene, lo retira y deja un segundo de página vacía. Las dos existen porque «hay que marcar mucho más las transiciones, en imagen y en sonido».

3.7.5 · Movimiento

MOVIMIENTO = [ COLOCACIÓN ":" ] [ ARTÍCULO ] SUJETO VERBO-MOV [ DESTINO ]
             { "·" ( [ "por" ] TRAYECTO | MANERA | GRANULADO ) }
             [ VENTANA ] ;

SE RECONOCE POR EL VERBO, no por llevar sufijos. VERBO-MOV es vocabulario cerrado (§4.7) precisamente para poder decidirlo aquí.

Si se reconociera por los sufijos, la piedra rueda hasta el borde —sin adornos— no sería un movimiento: caería a prosa y se imprimiría en pantalla como texto del narrador. Es el peor fallo del sistema (§9.2) y era alcanzable por su función más nueva.

LEY DEL MOVIMIENTO. La curva no se declara: se deduce de la materia, la mano, el afecto y la manera. No hay easing, ni keyframes, ni Bézier, ni rate_func en el pliego.

El oficio de Lasseter es el comportamiento por defecto (oficio.py). Los principios de «Principles of Traditional Animation Applied to 3D Computer Animation» (Lasseter, 1987) los pone el motor en cada verbo de movimiento, sin que el pliego escriba un número:

principioqué hace el motorquién lo modula
entrada y salida lentasla curva deducida se suaviza en los dos extremos; nunca es linealla manera (de golpe conserva brusquedad)
anticipaciónretrocede por el mismo camino antes de salir, proporcional a la velocidadcon anticipación la fuerza; de golpe la quita
arcossin trayecto, el verbo lo decide (salta → en arco, vuela → en curva, cae → cayendo…); si tampoco, un arco suave hacia arriba. Nada se sale de la hoja por el caminoel trayecto escrito manda; recto es recto
estirar y encogerse estira a lo largo de la marcha conservando el área; al aterrizar (cae, salta, rebota) se aplasta y vuelvela velocidad y la materia (lo rígido cede la mitad); un texto anclado a su papel no se deforma
acción continuadase pasa del destino y vuelve oscilando; se inclina contra la marchala masa clava, el rebote y el cimbreo se pasan
acción superpuestalas partes de un grupo (juntos:) salen escalonadas, cada una tirando de la siguiente como un muelle amortiguado; con más partes que simultaneos_maximos, la cadena se tensa en cascada y nunca hay más de tres moviéndose a la vez—
tiempola duración sale de la distancia y la manera, nunca por debajo de los fotogramas mínimos del canonla manera
pausa vivalo que se ha movido respira (deriva mínima sembrada): nunca un fotograma congelado> deja posar la alarga
exageracióntodos los factores ×1,25canon de Tórculo (OFICIO.exageracion)

Los números son los del canon de Tórculo (~/Developer/torculo/canon/gen/canon.py, sección OFICIO) y, si no está, la copia de oficio._OFICIO_BASE, que es la misma. El mutis en tanda (retira_juntas) también anticipa: se carga hacia dentro y se va acelerando.

El registro en dos. Lo dibujado se anima a la mitad de fotogramas con las poses retenidas, como la animación tradicional. Se escribe como sufijo de un movimiento (la pluma flota hasta el suelo · a la deriva · en dos) o en la línea de propiedades del preámbulo (formato 16:9 · sala crema · en dos) para todo el pliego. La película real, el hervor y los updaters siguen a unos.

Lo que va detrás de un · en una línea de movimiento es trayecto, manera, granulado, registro o ventana (hasta decir, mientras). Cualquier otra palabra es error (§7.1): antes se ignoraba en silencio.

3.7.6 · Cámara y cine

  "la truca" ORDEN-TRUCA [ IDENT ] [ "en" TALLA ]
  IDENT "mira a" IDENT
  [ ARTÍCULO ] IDENT ( "sale" | "entra" ) "por la" LADO
  "sonido:" CRUCE-SONIDO [ NÚMERO ]
  "fuera de campo" [ "por la" LADO ] ":" TEXTO
  [ "el" ] "foco" ( "en" | "pasa a" ) IDENT | "todo en foco"
  IDENT "está" TEXTO                       ← estado, para el raccord

mira a admite un objetivo fuera del encuadre: es el truco del plano/contraplano. foco no es blur: es densidad de tinta, nitidez de canto y sombra (§5.9.2).

3.7.7 · El viaje

  IDENT "viaja" | IDENT "se apea"
  "el mundo" MOVIMIENTO-MUNDO [ NÚMERO ]
  "por la ventanilla:" LISTA "desfilan"
  "por" VENTANA-DE "de" IDENT "se ve el mundo"

3.7.8 · Eventos

EVENTO = ">" NOMBRE-EVENTO [ ARG ] { "·" ">" NOMBRE-EVENTO [ ARG ] } ;

NOMBRE-EVENTO es vocabulario cerrado con estado (§4.8): un evento puede estar vivo o reservado, y el lint lo dice.

3.7.9 · Anidamiento y concurrencia

  "dentro:" NL { LÍNEA-CLIP }        ← sub-clips; máximo 3 niveles
  "mientras:" LÍNEA-CLIP
  "al decir" CITA ":" LÍNEA-CLIP
  LÍNEA-CLIP "hasta decir" CITA

3.8 · FIN · 3.9 · La servilleta

== FIN ====================
texto del colofón
> silencio 3

Un archivo sin ningún == es prosa pura: cada frase es un clip y el dramaturgo decide lo demás. Es el punto de entrada y debe funcionar siempre — §9.3 le exige un pliego de prueba.


4 · Léxico: los vocabularios cerrados

LEY. Si una palabra no está en su lista, es un error, no una extensión silenciosa.

4.1 · Afectos (8) · vocabulario.AFECTOS

contenido · eufórico · exhausto · juguetón · nervioso · seco · sereno · solemne

4.2 · Funciones (11) · vocabulario.FUNCIONES

apertura · cartel · contrapunto · digresión · eco · giro · ilustración
prueba · remate · respiro · tesis

4.3 · Tensiones (4) y arcos (6)

vocabulario.TENSIONES · vocabulario.ARCOS

sube · mantiene · cae · rompe

espiral · letanía · pregunta→respuesta · ruina
tesis→antítesis→síntesis · viaje y vuelta

4.4 · El plano de cine · continuidad.TALLAS · ALTURAS · FRENTES · MODOS

ejevalores
talla (7)general · conjunto · medio · americano · corto · primer · detalle
altura (5)nadir · contrapicado · normal · picado · cenital
frente (5)frontal · tres cuartos · perfil · escorzo · espalda
modo (3)cartel · documento · mundo

Las tallas están ordenadas: la distancia entre dos es su número de escalones. Mesa.ENCUADRES da la escala y el ritmo de cada una y debe coincidir exactamente con TALLAS, en el mismo orden — es requisito de conformidad.

4.5 · Plantillas y tallas son DOS EJES

vocabulario.PLANTILLAS (8):

documento · primerísimo · general · mapa · contraplano · orla · nocturno · cartel

No son tallas. Una talla dice cuánto ocupa el sujeto en el encuadre; una plantilla dice dónde caen las piezas en la hoja. Comparten una sola palabra, general, y primerísimo no es primer.

Consecuencias normativas:

  1. PLANO_DE (§4.6) mapea funciones a plantillas, no a tallas.
  2. SALTO DE TALLA (§7.2) solo se evalúa cuando los dos planos consecutivos declaran talla. Entre plantillas no hay escalones que contar, y el lint no debe inventarlos.
  3. plano fijo (§3.4) toma una plantilla.

4.6 · Mapa función → plantilla · vocabulario.PLANO_DE

funciónplantilla
aperturaorla
remate · giroprimerísimo
respirogeneral
ilustración · contrapuntocontraplano
digresiónmapa
tesis · prueba · ecodocumento
cartelcartel

4.7 · Los verbos de movimiento · movimiento.VERBOS (24)

baja · cae · camina · corre · cruza · entra · esquiva · flota · gira
rebota · resbala · rueda · sale · salta · se apea · se encaja · se levanta
se sienta · sube · tiembla · tropieza · va · viaja · vuela

Cada uno declara si gasta ventana propia y si admite destino. viaja no gasta ventana: monta en el reloj del mundo.

Relacionales (11) · movimiento.VERBOS_RELACIONALES — actúan sobre otra cosa y crean ligadura viva con muerte conjunta; el ciclo es error (§7.1):

agarra · alcanza · arrastra · cuelga · empuja · esquiva · huye · orbita
se apoya · sigue · suelta

Cada relacional declara su preposición (sigue a, huye de, se apoya en).

4.8 · Los eventos, con su estado · vocabulario.EVENTOS (78)

Todos vivos. Los 19 de siempre:

amanece · anochece · barre · barrido · capítulo · congela · continúa
cruza el eje · deja posar · dura · el clip se agranda y se va · empapela
espera al clip · gigante · queda · respira · salta · seco · silencio

> deja posar es la pausa viva del oficio (§3.7.5): lo último que se ha puesto en el beat respira y la mesa espera a que se asiente (2 × pausa_fin_beat del canon). El beat crece lo que dura el asiento.

Los 14 que eran reservados, vivos desde RADIOINTERMISIÓN (§3.10.6), con transicion.wgsl de la biblioteca de materias:

a la vez · chasquido · corta · corta en la acción · cortinilla de tijera
encadena · entra de golpe · funde a blanco · funde a negro
funde desde negro · la mano tapa · pasa página · retención larga · se sostiene

Los nuevos de RADIOINTERMISIÓN (§3.10), por familias:

transiciones   funde desde blanco · iris · se quema · desenfoque de pasada · sintoniza
cámara         zoom de golpe [a «X»] · barrido a la izquierda | a la derecha |
               hacia arriba | hacia abajo · plano holandés [a la izquierda |
               a la derecha] · temblor · cámara lenta · velocidad normal ·
               congela la imagen · se para en seco · arranca de golpe ·
               fotograma en blanco · la cámara vuelve · la cámara no para ·
               la cámara va pegada a «X»
materia viva   se moja · se seca · se lava · florece [TAMBOR] [en «X»] · se teje ·
               la tinta lo cubre todo [TAMBOR] · se rasga el papel y asoma «ESCENA» ·
               asoma «ESCENA» en el hueco
espejo         se rompe el espejo · vuelve el espejo · se parte la pantalla ·
               se junta la pantalla
formato        formato 4:3 | 16:9 | 2,39:1 [· de televisión]
simultaneidad  simultáneo en rejilla | en abanico | en abanico que gira · un solo plano
río            río tipográfico [en fila | en libertad | a pantalla completa] ·
               revienta «palabras»
montaje        montaje al ritmo de las palabras · montaje al pulso ·
               el montaje se acelera · mezcla los registros «A» · «B»…
voz            la voz se vuelve radio

Declarar el estado es la ley de las tres sedes (§9.2) aplicada a sí misma. mesa lee avisaría de un reservado; hoy no queda ninguno.

Cuatro eventos se copian además a un campo propio del clip (vocabulario.EVENTO_A_CAMPO), porque otra pasada los lee de ahí: salta, cruza el eje, congela, continúa. Las dos primeras son las vías de escape de los avisos de continuidad, y sin esa copia la escapatoria documentada no funcionaba.

4.9 · Trayectos (16), maneras (15), granulados (4), registros (1)

movimiento.TRAYECTOS · MANERAS · REGISTROS · taller.GRANULADOS

TRAYECTOS
  recto · en arco · en curva · a saltos · en zigzag · rodando · girando
  cayendo · flotando · resbalando · rebotando · por el camino · por el borde
  por el suelo · en espiral · fuera de campo

MANERAS
  de un tirón · a tirones · despacio · titubeante · resuelto · pesado
  ligero · rozando · en volandas · sin ganas · de golpe · con cuidado
  a regañadientes · a la deriva · con anticipación

GRANULADOS
  a unos (1) · a doses (2) · a treses (3) · a pulso (irregular sembrado)

REGISTROS
  en dos

de golpe significa además sin anticipación (el énfasis no avisa); con anticipación la fuerza aunque el gesto sea lento. a la deriva estaba en el ejemplo de movimiento.py y en pliegos de verdad sin estar en la lista: era un agujero del vocabulario, no una palabra inventada. Las maneras se comparan normalizadas (§0.4): con anticipacion vale.

4.10 · Los vocabularios menores · vocabulario.*

vocabulariovalores
ORDEN_TRUCA (9)viaja con · sigue a · busca a · encuadra a · se acerca a · se acerca · sube · baja · se queda
GESTO_MARCA (4)subraya · rodea · tacha · señala
DISPOSICIONES (8)en fila · en fila holgados · en columna · en corro · en abanico · como flores · amontonados · en rejilla
PARTES_CUERPO (7)los pies · la cabeza · las manos · el pecho · la espalda · el hombro · el regazo
REGISTROS_LETRERO (6)rescate · mano · cartulina · cita · cita máquina · cita moderna
REGISTROS_LETRERO_RESERVADOS (3)máquina · dymo · tira — la lengua los acepta y hoy caen al párrafo; mesa lee avisa
DIRECCIONES_LUZ (5)de la izquierda · de la derecha · de frente · de atrás · cenital
DUREZAS (2)dura · blanda
SENTIDOS (2)de frente · de espaldas
LADOS (4)izquierda · derecha · arriba · abajo
HORAS (5)diurna · nocturna · amanece · atardece · mediodía
MOVIMIENTO_MUNDO (4)avanza · acelera · frena · para
VOCES (6) · sonido.VOCESnarrador · cita · cita_f · cita_f2 · cita_f3 · cita_m2
CRUCE_SONIDO (4)adelanta (corte J) · retiene (corte L) · dentro · fuera
LEJANÍAS (8) · viaje.LEJANIASal pie · al paso · cerca · a media distancia · lejos · al fondo · en el horizonte · en el cielo
REGISTROS (4) · materia.REGISTROSrecorte · pintado · fotográfico · tinta
ANCLAS (5)bordado · celo · chincheta · esquineras · washi
TAMBORES (7)ámbar · bermellón · naranja · rosa · ultramar · verde · violeta

4.11 · El taller y la mano

Familias del taller · taller.TALLER_BASE:

familiadeclara
papeltono · grano · canto · sangra
tintahierve · sangra
cantopor defecto ∈ tijera, cuchilla, rasgado, quemado, ninguno
anclapor defecto y repertorio
sombradureza · dx · dy · alfa
materia <nombre>masa · arrastre · rebote · cimbreo · foley
vidaescoba · resurrección
banograno · temperatura
fantasmafoto · texto · numeral
reticulaancho · celda

Claves de la mano · taller.MANO_BASE:

clavevalores
pulsopoco · normal · mucho
precisiónalta · media · baja
granulado§4.9
entraresuelta · titubeante · de golpe
salesin prisa · seca · arrastrando
cansanada · poco · mucho
toca la trucasí · no

Escala de cuentas humanas → número (taller.escala), en un solo sitio:

nada/nula 0.0 · poco/poca 0.33 · normal/media/medio 0.55
mucho/mucha/alta 1.0 · baja 0.15

4.12 · Piezas y sustratos: dos taxonomías, y cómo se relacionan

TIPO-PIEZA (8) — lo que pon: acepta y el compilador emite:

cartulina · dymo · mano · python · rescate · sello · texto · tira

SUSTRATOS (14) · pieza.SUSTRATOS — de qué está hecha una pieza:

papel · tira · cartulina · postit · vegetal · acetato · foto · periódico
pijama · milimetrado · kraft · dymo · ficha · polaroid

No son la misma lista y no deben serlo. Un TIPO-PIEZA es un papel dramatúrgico («esto es un rescate», «esto es un letrero Dymo»); un SUSTRATO es una propiedad física (color base, opacidad, grosor de sombra, foley al posarse). Se relacionan así:

  • todo TIPO-PIEZA resuelve a un sustrato: rescate→papel, sello→cartulina, texto→papel, mano→papel, y los homónimos (cartulina, tira, dymo) a sí mismos;
  • los sustratos que no son tipos (postit, vegetal, acetato, foto, periódico, pijama, milimetrado, kraft, ficha, polaroid) se alcanzan desde el taller (materia <nombre>) o desde la capa Python, no desde pon:.

4.13 · Palabras reservadas · vocabulario.PALABRAS_RESERVADAS (76)

Las palabras que abren línea en el parser más los artículos y preposiciones. No pueden ser el nombre de un hablante (§3.7.1) ni un identificador (§7.1). Se comparan sin normalizar (§0.4): él no es el.

4.14 · El catálogo ver: (68) · visualizaciones.CATALOGO

alfiler · ancla · arbol · balanza · barras · brujula · bucle · cadena · caja
cancelacion · ciclo · comparacion · constelacion · convergencia · cuadrante
cuenta · curva · dado · diana · dispersion · distribucion · domino · ecuacion
ejes · embudo · engranaje · escalera · espectro · espiral · flecha de proceso
fraccion · globo · grieta · huella · interruptor · isla · jerarquia · laberinto
linea temporal · lista tachada · lupa · mapa · medidor · moneda · monton
multitud · onda · orbita · papeleta · pendulo · pila · ping pong · porcentaje
proceso · puente · recorrido · red · reloj · resta · semaforo · suma · telarana
teorema · termometro · titere · venn · versus · votos

El cuerpo tras — es el dato que la visualización dibuja, y por eso queda exento del porcentaje pobre (§1.2).


5 · Semántica

5.1 · Las cinco leyes

  1. La constitución anti-parámetro.
  2. Cierre, en el sentido de §5.10.
  3. La identidad es la semilla.
  4. Lo que no cabe en la hoja no se lee.
  5. La lejanía manda sobre velocidad, color y z de todo estrato.

5.2 · La tabla de precedencia

Gana el de la izquierda. Fuente única: precedencia.DIMENSIONES; se imprime con mesa por-que --tabla.

dimensiónorden de autoridad
sitiomano → ligadura → cuerpo → slot → compositor → semilla
zestrato → proscenio → llegada
tamañodeclarado → mano → identidad → papel → legibilidad
tiempopartitura → ventana → tope → gesto
fondoorden de la mano → escena → capítulo → carácter
velocidad de estrato (velocidad_estrato)lejanía → orden del mundo
color de estrato (color_estrato)lejanía → archivo → paleta
curvamanera → materia → mano → afecto
sombraluz (la dice la escena, nunca la pieza)
nombreexacto → alias → texto exacto → texto difuso

Todo decisor devuelve (valor, razón) o None; la razón es obligatoria por firma. Las autoridades son vocabulario cerrado (precedencia.AUTORIDADES, 34).

La dimensión nombre existe porque §7.1 declara error el empate «en el mismo nivel de resolución»: los niveles existían y no estaban en ninguna tabla. Para un documento cuya tesis es que ninguna precedencia vive en un comentario, era la que no vivía en ningún sitio.

5.3 · Identidad, semilla y determinismo

5.3.1 · La identidad

identidad = ruta declarada (`id portada/fabula`)
          | ruta derivada  (`capítulo/escena/texto`)

Se calcula del contenido, nunca de la posición. Un índice #n solo desempata piezas literalmente idénticas, y el desempate es local.

5.3.2 · La semilla

semilla_pieza = H(identidad) ⊕ H(toma)

La identidad gobierna lo que debe verse siempre igual; la toma gobierna la materia. --toma 3 da otra interpretación de la misma película: mismo número de planos, misma duración, distinta materia.

5.3.3 · Prohibiciones de siembra

Ninguna semilla puede depender del orden de render o de creación, de id() de Python, del proceso, del reloj ni del sistema de archivos.

5.3.4 · El hash maestro

Se calcula sobre el pliego desnudado y canonicalizado: espacios normalizados, comentarios y digresiones fuera, secciones resueltas, marcas (máquina) retiradas. Consecuencia: escribir de vuelta no cambia la semilla.

5.3.5 · El contrato de determinismo, completo

Dos ejecuciones producen el mismo vídeo si coinciden las cinco entradas:

  1. el pliego (canonicalizado, §5.3.4);
  2. la toma (--toma);
  3. la versión del motor;
  4. el bestiario (PYTHON …) y las secciones importadas;
  5. el sidecar de tiempos p.tiempos.json.

La quinta no es un detalle: mesa graba sintetiza voz, y la voz es una entrada del render como cualquier otra. Un cambio de versión del TTS mueve las duraciones y con ellas todo el compás. Por eso el sidecar guarda hash y metodo por beat: son parte del contrato, no metadatos.

Corolario para el canon (§9.3): una huella dorada es válida para una terna (pliego, toma, versión) concreta, y el pliego del canon debe declarar tirada definitiva y fijar su toma. Sin eso, el arnés es indeterminista justo en el eje que §5.3.2 introduce.

5.4 · Los estratos

Ver §1.3. Leyes derivadas: contrato de reserva por beat; ligaduras sin ciclos; z por bandas con reset por capítulo.

5.5 · El tiempo

Compás único: mesa graba es prerrequisito; el sidecar <pliego sin extensión>.tiempos.json está siempre presente. Un clip sin di: recibe > dura N o duración sintética. No hay régimen libre.

La partitura (al decir «w»:) es la primera autoridad del tiempo. Toda acción tiene ventana; mientras: abre pista paralela; hasta decir estira; el tope impide que una acción se coma el turno de la siguiente. Dos acciones sobre el mismo sujeto en la misma ventana son error.

5.6 · La lejanía manda, y su única excepción

De la lejanía —y de nada más— salen la velocidad de una capa, su color y su z.

La excepción, declarada: MUNDO acelera a N / frena a N es una orden explícita de la mano al reloj del mundo, y por eso la dimensión velocidad_estrato tiene una segunda autoridad, orden_mundo, por debajo de la lejanía. La ley sigue valiendo para el reparto entre capas —una capa no puede ir despacio y estar delante—; lo que la orden cambia es el reloj común, que multiplica a todas por igual.

MUNDO para fija el reloj a cero. Es vocabulario cerrado (MOVIMIENTO_MUNDO), no un número por defecto.

5.7 · La materia

LEY: nada es un relleno plano.

registroqué escómo se hace
recortepapel cortado con tijeracontorno de tijera + grano + sombra dura + canto
pintadogouache o rotuladorcapas de pasadas con ductus y borde desbordado
fotográficomaterial real recortadorevelado + troquel
tintalínea de rotuladortrazo a pulso — ya hierve

El hervor: tres poses del mismo camino, misma geometría, distinto temblor, periodos 7/8/9 sembrados por identidad. Las tres deben ser isomorfas. El hervor cambia la forma, nunca el sitio.

El movimiento secundario (arrastre, rebote, cimbreo) es propiedad de la materia y no se declara nunca en el pliego.

El apoyo: una pieza soltada cae hasta su apoyo; flota solo si su materia lo permite. Una piedra en el aire es aviso.

5.8 · La cámara y la continuidad

Del eje se derivan el lado de cada quien, su vista y por dónde entra. Volteo solo sobre piezas espejable.

Las tres leyes de cámara: el desplazamiento es un dato, no una caja envolvente · el corte no viaja · una escena con mundo propio es un lugar nuevo.

El operador: si la mano declara toca la truca: sí, la truca hereda su pulso —anticipación, micro-temblor de periodo primo, sobrepaso, y pierde al sujeto medio segundo—.

5.9 · La luz y el foco

Una sola declaración por escena, y todas las sombras obedecen. La hora las tiñe. Prohibido ajustar la sombra de una pieza suelta. materia.luz_de(dirección, dureza, hora, rasante) es la derivación.

El foco no es blur: lo desenfocado está más pálido, con el canto más blando y algo más grande.

5.10 · El invariante de cierre, con precisión

La ley 2 se enunciaba compilar(pobre) == compilar(escribe(pobre)), y así no puede cumplirse literalmente: escribe materializa decisiones y marca su procedencia, luego origen y autor_cabecera difieren por construcción.

Enunciado normativo: son iguales módulo procedencia.

canon(compilar(p)) == canon(compilar(escribe(p)))

donde canon(ir) descarta los campos de procedencia —origen, autor_cabecera, _importado— y nada más. Todo lo que decide un fotograma tiene que coincidir; quién lo decidió, no.


6 · El IR (guion rico)

El IR se regenera siempre y no se versiona. Es el contrato del que come mesa cuenta, y esa es la prueba de autenticidad del formato: si mesa cuenta no sabe narrar una capacidad nueva, la capacidad está mal integrada.

compila(doc) devuelve (guion, parte, extra).

6.1 · Nivel de guion

Obligatorios — una implementación conforme los emite siempre:

campotiposignificado
escenastrnombre de la Scene a renderizar
capitulointíndice de página (0-based)
salastrcrema | pizarra
beatslistalos clips compilados (§6.2)
unidadeslistacapítulos, con sus beats y su estado (§6.3)
tallerdictel taller efectivo, con toda la precedencia aplicada
manodictla mano efectiva

Opcionales — ausentes o null si el pliego no los declara:

camposignificado
registroel afecto dominante del pliego
subtitulosestilo de subtítulo, o ausente = apagados
gigantespalabras-fantasma detectadas
personajesprotocolo de títere por personaje
claves_capcapítulo → palabra-fantasma
tambor_capcapítulo → tambor declarado
tramos_capcapítulo → tramo de canción
archivo, archivo_cap, archivo_tintasel archivo fotográfico curado
fantasmapesos del gigante de fondo
python_ruta, python_rutasel bestiario
replicabool: el pliego va en modo réplica
colofon{lineas, tirada, semilla, toma, pobre} — se cuenta, no se declara

6.2 · Nivel de beat

Obligatorios:

camposignificado
idordinal del clip (b07) — para referenciarlo y para el lint
identidadla ruta estable (§5.3.1) — de aquí salen las semillas
capíndice de capítulo
planola plantilla resuelta (§4.5)
afectoel afecto resuelto
accioneslista de acciones (§6.4)

Opcionales, y qué distingue los pares:

camposignificado
dila locución del beat
duraduración declarada, si no hay di:
secnúmero de secuencia dentro del capítulo
cortehay corte antes de este beat (lo decida quien lo decida)
corte_manoel corte lo pidió la mano, no el dramaturgo
plano_manola plantilla la declaró la mano, no se derivó de la función
limpiael beat abre barriendo la mesa
quedasus piezas no se retiran
cantael beat va sobre la canción
nocturnola hora está en modo noche
congela> congela: el corte detiene lo que se movía
luzla luz efectiva, ya resuelta con la hora
escena, escena_tituloa qué escena pertenece
abre_escenaes el primer beat de su escena
lugar_nuevola escena trae mundo propio

El patrón X / X_mano es sistemático: X es el valor y X_mano dice si lo puso una persona. De ahí sale la columna «autoridad» de mesa por qué.

6.3 · Nivel de unidad

camposignificado
n, tituloordinal y título del capítulo
beatsids de sus beats
escenastítulos de sus escenas
estado_entradaobligatorio — con qué estado abre la unidad

estado_entrada = {velocidad_mundo, sentido, hora}.

Existe porque el movimiento persiste al corte (§3.7.8) y los capítulos se renderizan en procesos distintos: la única forma de que el capítulo 3 sepa a qué velocidad iba el mundo es que el compilador se lo escriba. Lo calcula recorriendo todo lo anterior, y es determinista.

6.4 · Nivel de acción

camposignificado
verboobligatorio — qué se hace
piezala pieza sobre la que se actúa
ensitio declarado por la mano → autoridad mano
ligaligadura → autoridad ligadura
cuerpositio relativo a un cuerpo → autoridad cuerpo
al_decirancla a la voz → autoridad partitura
runduración del gesto → autoridad gesto
trayecto, manera, granuladodel movimiento (§3.7.5)
fijar, secoanclaje y modo de entrada
spec, sobreel cuerpo de un ver: / el objetivo de una marca

Que un campo esté presente ES la señal de autoridad: mesa por qué lee exactamente esto y por eso su explicación no puede divergir del render.

Verbos que emite el compilador (26):

bordar · camino · clip · desfila · dispone · distribuye · encaja · escena
escenario · escribir · letrero · mascarilla · mecanografiar · monta · mundo
muta · pausa · pica · posar · recompone · subrayar · tachar · truca · ver
viaje · vista

6.5 · Parte y decisiones

parte es una lista de frases legibles. extra contiene decisiones por beat (función, afecto, plantilla, tensión, autor), motivos, reparto y arco.


7 · Lint (mesa lee)

7.1 · Errores

  • palabra fuera de vocabulario cerrado — incluidos los verbos de movimiento y los eventos;
  • función o plano desconocidos en la cabecera;
  • ambigüedad de nombre irresuelta: dos candidatos empatan en el mismo nivel de la dimensión nombre (§5.2);
  • palabra reservada usada como identificador (§4.13);
  • dos gritos en un clip;
  • dos acciones sobre el mismo sujeto en la misma ventana;
  • ciclo de ligaduras · cadena de más de 3 eslabones · anidamiento > 3;
  • pieza sin apoyo cuando su materia no flota;
  • el pliego declara una época mayor que la del motor;
  • registro de letrero desconocido — letrero (chorizo) pasaba limpio y salía un párrafo de cuaderno donde el pliego pedía una cita;
  • palabra suelta en una línea de movimiento — lo que no es trayecto, manera, granulado, registro ni ventana.

7.2 · Avisos de continuidad

Ninguno es fatal: romperlos es legítimo, pero tienen que decirse solos. continuidad.AVISOS:

avisocuándocómo se silencia
SALTO DE EJEcruzar la línea sin plano neutro> cruza el eje
SALTO DE TALLAmisma talla y ángulo sobre el mismo sujeto, o más de dos escalones — solo entre planos que declaran talla (§4.5)> salta
RACCORD DE MIRADAen contraplano, los dos miran al mismo lado—
RACCORD DE DIRECCIÓNsale por un lado y entra por el mismo—
RACCORD DE ESTADOuna pieza cambia sin acción que lo explique—

7.3 · Otros avisos

  • evento reservado (§4.8): la lengua lo acepta y hoy no se ve;
  • porcentaje pobre < 85 %, con las líneas que llevan cifras;
  • capítulo sin respiro · escena sin EJE con dos o más personajes;
  • sombra declarada por pieza · cifra en dialecto libre;
  • plano sin duración alcanzable (el tope recorta más del 30 %);
  • registro de letrero reservado (§4.8): declarado y hoy invisible.

7.4 · Avisos que necesitan el sidecar de tiempos

mesa lee <pliego> los emite solo si existe <pliego>.tiempos.json. Los dos nacieron de fallos que no daban error ni aviso y solo se veían mirando el vídeo entero:

avisoqué caza
ancla muertaal decir «X» donde X no se dice nunca en ese beat. La promesa no falla: se degrada en silencio al reparto automático y la pieza cae donde le toque. En un pliego de 224 señales había 9 muertas, todas por escribir el ancla como se escribe y no como suena: «Montalván» por «Montalbán», «quiosco» por «kiosco», «cincuenta» donde la transcripción pone «56».
dos vocesun clip no mudo dentro de un beat narrado y sin > espera al clip. El diálogo de la película queda debajo de la voz del ensayo y se pierden los dos. O va mudo, o el beat declara la espera.
ancla ilegiblela señal casa con la voz pero no con su di:. Funciona y el pliego se lee como si estuviera rota — es lo que pasa al escribir el ancla como suena en vez de como se escribe.
el beat se alargael clip dura más que la voz: dice cuántos segundos de plano en silencio se están pidiendo.

7.4b · La revisión Lasseter (mesa lasseter, mesa lee --lasseter)

Se mide sobre la cronología real, no sobre el pliego. La Mesa apunta en su único envoltorio (Mesa.play) y en cada fotograma (update_to_time) qué se mueve, cuánto, durante cuántos fotogramas, con qué perfil, cuántas cosas a la vez, cuándo entra y sale cada texto y dónde empieza cada beat (lasseter.Registro). Tres caminos dan esa cronología, y los tres son el mismo intérprete:

caminocronología
mesa tocael render entero; escribe <vídeo>.cronologia.json junto al vídeo
mesa lasseter P · mesa toca P --secael render seco: los mismos fotogramas interpolados (a 24 fps) sin rasterizar ni escribir vídeo
mesa animaticalos gestos están secos: se juzga su curva, no su recorrido, y el informe lo dice

mesa lee lee la cronología de la última tirada si es más nueva que el pliego; con --lasseter rueda en seco. tools/vela.py lasseter es la misma revisión (un .mesa o un .cronologia.json).

avisocuándo (números del canon OFICIO)
movimiento demasiado cortoalgo se desplaza en menos de 8 fotogramas (a 24 fps)
demasiadas cosas a la vezmás de 3 piezas que se quedan en escena se mueven en el mismo fotograma (lo que sale de cuadro despeja, no pide atención)
sin pausa al final del beatel último gesto acaba a menos de 0,6 s del corte
no da tiempo a leerloun texto se ve menos de palabras/220·60 + 1 s
beats gemelosdos beats seguidos con la misma duración (±1 fotograma) y la misma curva
movimiento linealel perfil medido fotograma a fotograma es una recta
rápido y sin anticipación≥ 5,6 u/s y ≥ 1 u sin retroceso previo, salvo de golpe o lo que entra de la mano o desde fuera de cuadro

Cada aviso lleva beat, línea del pliego, instante, detalle, sugerencia y gravedad; el informe da los diez más graves. Dibujar no es moverse: un trazo que crece no cuenta como desplazamiento.

7.5 · Avisos que necesitan el bestiario del proyecto

mesa lee lee el PYTHON fichero.py del preámbulo sin ejecutarlo —se buscan los def, los nombres reexportados y las claves de los poses={…}—. Sin esto, un nombre mal escrito solo se veía a la hora y media de tirada:

avisoqué caza
python: X inexistenteerror: se invoca un dibujo que no está en el bestiario.
pose no existeerror: X está bailando con una pose que no se declaró. Antes caía a la primera pose en silencio.
pose sin normalizarsenala donde el bestiario escribe señala.
compone un fantasmajuntos: … avion … con un avion que en ese beat no se crea.
registro de letrero desconocidoerror: letrero (chorizo) pasaba limpio y salía un párrafo de cuaderno.

Las anclas se escriben como se ESCRIBEN. casa_palabra resuelve los dos desajustes legítimos contra una voz real: la cifra frente a su lectura (1154 ↔ «mil ciento cincuenta y cuatro») y la transcripción aproximada (Hafsa/Habsa, quiosco/kiosco), por distancia de edición.


8 · Herramientas

mesa ≡ python -m manim_saorin.formato.cli

8.1 · Escribir y ver

ordenqué hace
mesa lee Plint, avisos, porcentaje pobre
mesa cuenta Pnarra el pliego en prosa
mesa ir Pvuelca el IR
mesa escribe Pmaterializa lo decidido, marcado (máquina)
mesa propone P CLIP · mesa explica Jayuda y explicación

8.2 · Dirigir

ordenqué hace
mesa graba Psintetiza la voz y escribe el sidecar
mesa animatica Pun fotograma por beat con tiempos y audio reales
mesa dura P [--objetivo S]metraje contra un objetivo
mesa lasseter P [--cap N] [--jobs J] [--max K]la revisión del oficio sobre la cronología real (§7.4b); con --jobs rueda en seco por capítulos en paralelo
mesa contactos P · mesa ensaya P [N]hoja de contactos · un capítulo

8.3 · Depurar

ordenqué hace
mesa por-que P CLIP [PIEZA]cada decisión con su autoridad y su línea
mesa por-que P --tablala tabla de precedencia, generada
mesa mueve P [CLIP]trayecto, manera, ventana y curva resuelta
mesa indice Pcenso de nombres y ambigüedades

8.4 · El espejo

mesa taller P [--mano] · mesa parte P · mesa funde P. Ninguna cambia un fotograma.

8.5 · Renderizar

mesa toca P [-q ql|qm|qh|qk] [-o SALIDA] [--cap N] [--escena T]
            [--partes --jobs N] [--sonido] [--bano] [--toma N]

8.6 · Los arneses

vela huella V -o H.json      ¿he roto algo?
vela vida V [-o H.json]      ¿está vivo?
vela vidas A.json B.json     comparar
vela replica ORIG REPL       coincidencia 1:1
planos.py F.py …             puerta anti-relleno-plano

LA MÉTRICA MIENTE. huella mide dónde están las cosas; vida mide si se mueven.

Ley de arbitraje. Huella idéntica + ojos que dicen «muerto» → ganan los ojos y el cambio es deliberado. Huella distinta sin que nadie lo pidiera → regresión. Ninguna huella del canon se rompe sin mirar antes una tira a 2 fps, y la rotura se documenta con acta.

El hervor solo es medible a ≥20 fps; por debajo la implementación debe decir «no medible» y no estimarlo.


9 · Conformidad, compatibilidad y estado

9.1 · La constitución de compatibilidad

Un .mesa que compiló una vez compila siempre.

La época se declara en el preámbulo; mesa lee avisa si el pliego pide vocabulario más nuevo. El vocabulario de una época está congelado — incluidos los eventos reservados (§4.8), que es precisamente lo que «reservado» compra.

9.2 · La ley de las tres sedes

Una capacidad que no está en los tres sitios —gramática, compilador, intérprete— no existe.

Y el modo en que se nota es peor que un error: una directiva que está en el vocabulario y no en el parser se imprime en pantalla como texto del narrador. Nombrar así el fallo es lo que lo hace exigible.

De esa ley salen dos obligaciones de este documento:

  1. todo no terminal del EBNF tiene tabla en §4 — si no, no es cerrado;
  2. todo evento declara si está vivo o reservado — §4.8.

9.3 · La suite obligatoria

pliegooficiocriterio de aceptación
servilleta.mesael punto de entrada (§3.9)prosa pura, sin una marca; compila y renderiza
paradoja.mesael canon doradohuella idéntica para su terna (pliego, toma, versión); declara tirada definitiva y fija su toma (§5.3.5)
espejo.mesael invariante de §3.3efectivo(p) == efectivo(parte(p)) == efectivo(funde(parte(p)))
materia.mesael taller y los registroslos cuatro registros presentes
pulso.mesala manomisma composición en sitios, distinto movimiento
movimiento.mesatrayectos × maneraslos 16 × las 13, sin una cifra
oficio.mesael oficio de Lasseterarco, anticipación forzada, de golpe, > deja posar, en dos y fuera de campo, sin una cifra; mesa lasseter sin avisos
raccord.mesacontinuidadlos cinco avisos, al menos una vez cada uno
ambiguo.mesanombreserror de ambigüedad y de palabra reservada; código de salida 1
corto.mesala prueba de fuego2–3 min · dos personajes · tres escenas · un viaje · diálogo con hablante · música · transiciones · ≥85 % pobre · sin bajar al Python · se lee en voz alta

9.4 · Lo que el pliego NO puede decir

  • easing, keyframes, rate_func, duraciones sueltas en dialecto libre;
  • colores por hex o RGB;
  • sombra, velocidad de estrato o z por pieza;
  • piezas sin nombre;
  • dos sitios para la misma decisión.

Ninguna capacidad nueva entra si obliga al pliego a decir números que antes derivaba.

9.5 · Reservado: declarado en la lengua, no en el motor

Estas cosas están en la lengua y congeladas, y el motor todavía no las realiza. Escribirlas hoy no rompe mañana; mesa lee avisa.

quéestado y por qué
los 14 eventos reservadosvivos desde RADIOINTERMISIÓN (§3.10.6)
#MONTAJEtransición por defecto, respiro cada N y alterna (montaje paralelo). El ritmo de los cortes ya se dice en la línea de unidad MONTAJE (§3.10.8)
#CASCADApila de decisores con nombre y autoridad, cargable desde el proyecto

9.6 · Fuera de la beta 1, con decisión explícita

No son deuda oculta: son el contenido de la 1.0, y se listan aquí para que nadie los busque en la gramática.

quédecisiónpor qué
mesa desnuda1.0, y es la más urgente de esta listasin la inversa de escribe, el porcentaje pobre (§1.2) es un diagnóstico sin tratamiento: un pliego transpilado no se puede caminar de vuelta hacia la autoría
mesa mira1.0el crítico automático. mesa contactos cubre hoy su mitad barata
ACTO · PLIEGO1.0la estructura larga: un corto de doce minutos como varios archivos
multi-formato (9:16)1.0reencuadre por punto de interés
protocolos genéricos por especie1.0refactor grande sin cambio visible
cadenas con IK (≤3 eslabones)1.0más que eso es rigging, y el títere de cartón no lo necesita
stems · OTIO/EDL · mesa exporta1.0posproducción
los cuatro talleres (pizarra, riso, cuaderno)1.0son la demostración del eje, no su cimiento

10 · Ejemplos

10.1 · La servilleta

MESA «La paradoja»

Hay una paradoja incómoda en el arte de decidir bien.
Para acertar más sobre un tema, no siempre conviene juntar a los que más saben.
A veces conviene exactamente lo contrario.

10.2 · Un capítulo dirigido

MESA La paradoja de los expertos
formato 16:9 · sala crema · tirada borrador

ARCO pregunta→respuesta
MOTIVO «error» — empieza como enemigo y acaba siendo la herramienta
REPARTO Galton: verde

== CAPÍTULO 1 · EL BUEY ============== tensión sube · tambor ultramar

* apertura · contenido
di: Hay una paradoja incómoda en el arte de decidir bien.
pon: rescate «LA PARADOJA» · 60

* ilustración · nervioso
di: Plymouth, mil novecientos seis. Ochocientas personas apuestan cuánto pesa un buey.
foto: galton
al decir «ochocientas»: ver: multitud 18

* prueba · seco
di: La mediana de las apuestas: mil doscientas siete libras.
terminal: mediana de la multitud: 1207 libras
marca: rodea «1207»

10.3 · Una escena de cine, con diálogo y movimiento

MESA v2 El puerto
formato 16:9 · sala crema

PYTHON vistas.py
REPARTO ella: ultramar, alias: la que conduce
REPARTO él: bermellon, alias: el que pregunta

== CAPÍTULO 1 · LA SUBIDA ==========================

-- LA CARRETERA · diurna --
EJE de él a ella
LUZ de la izquierda · dura
MUNDO avanza · de frente
FONDO cielo · en el cielo
FONDO arboleda · cerca
FONDO carretera · al pie
DELANTE almendro · al paso · cada dos

* general de la carretera · sereno
di: Suben al puerto desde antes de que amaneciera del todo.
coche con vista cenital
el coche viaja
la truca viaja con el coche

* primer de él · contenido
él: —¿Falta mucho?
él mira a ella
sonido: retiene

* primer de ella · seco
ella: —Lo que falte.
ella mira a él

* detalle de la piedra · nervioso
di: En el arcén hay una piedra que lleva ahí desde antes que la carretera.
la piedra rueda hasta el borde · por el suelo · pesado · a treses
> congela

Obsérvese que él es un personaje válido y el no lo sería: la tilde diacrítica los distingue (§0.4).

10.4 · Taller y mano, y su mudanza

#TALLER collage
  papel crema · grano medio · canto rasgado
  canto · por defecto: tijera
  materia washi · masa nula · arrastre mucho · cimbreo mucho
#FIN

#MANO firme
  pulso poco
  precisión alta
  granulado a doses
  toca la truca: sí
#FIN

Con mesa parte, exactamente lo mismo:

TALLER talleres/collage.taller
MANO manos/firme.mano

10.5 · El pliego trampa de la continuidad

-- EL ANDÉN · diurna --
EJE de primero a tercero
LUZ de la izquierda · dura

* general de primero · sereno
di: Primero espera en su lado del andén, que es el izquierdo.
primero mira a tercero
sale por la izquierda

* detalle de primero · nervioso          ← SALTO DE TALLA
di: Y aparece otra vez por donde se fue.
entra por la izquierda                   ← RACCORD DE DIRECCIÓN

* medio de tercero · contenido           ← SALTO DE EJE
di: El otro cruza la línea sin avisar.

* corto de tercero · seco
di: Y los dos miran para el mismo sitio.
tercero mira a primero
primero mira a primero                   ← RACCORD DE MIRADA
el sombrero está puesto

* medio de primero · contenido
di: El sombrero, que nadie tocó, ya no está donde estaba.
el sombrero está en el suelo             ← RACCORD DE ESTADO

Apéndice A · Gramática completa

PLIEGO        = PREÁMBULO { CAPÍTULO } [ FIN ] ;
PREÁMBULO     = { LÍNEA-PREÁMBULO | SECCIÓN | COMENTARIO } ;

CAPÍTULO      = "==" TÍTULO { "·" ATRIBUTO-CAP } { "=" }
                { LÍNEA-UNIDAD | SECCIÓN | COMENTARIO }
                { ESCENA | CLIP } ;
ESCENA        = "--" TÍTULO [ "·" HORA ] "--"
                { LÍNEA-UNIDAD | SECCIÓN | COMENTARIO } { CLIP } ;
CLIP          = "*" ( FUNCIÓN | PLANO-CINE ) [ "·" AFECTO ] [ "(máquina)" ]
                { LÍNEA-CLIP } ;

LÍNEA-UNIDAD  = "EJE" "de" IDENT "a" IDENT
              | "LUZ" DIRECCIÓN-LUZ { "·" ( DUREZA | "rasante" ) }
              | "MUNDO" MOVIMIENTO-MUNDO [ NÚMERO ] [ "·" SENTIDO ]
              | "FONDO" CLAVE { ARG } "·" LEJANÍA [ "·" NÚMERO ]
              | "DELANTE" CLAVE { ARG } [ "·" LEJANÍA ] [ "·" "cada" NÚMERO ]
              | "ESCENARIO" TEXTO
              | "ARCHIVO" CLAVE { "·" CLAVE } ;

SECCIÓN       = "#" NOMBRE-SECCIÓN [ IDENT ] NL { LÍNEA-SECCIÓN } "#FIN"
              | NOMBRE-SECCIÓN RUTA ;
LÍNEA-SECCIÓN = FAMILIA [ VALOR ] { "·" CAMPO } ;
CAMPO         = CLAVE ( " " | ": " ) VALOR ;

LÍNEA-CLIP    = CONTENIDO | PIEZA | COLOCACIÓN | VERBO-ESCENA | MOVIMIENTO
              | CÁMARA | VIAJE | EVENTO | ANIDAMIENTO | COMENTARIO ;

CONTENIDO     = "di" [ "(" VOZ ")" ] ":" TEXTO
              | HABLANTE ":" TEXTO
              | "letrero" [ "(" REGISTRO-LETRERO ")" ] ":" TEXTO { "/" TEXTO }
              | "terminal:" TEXTO | "canta:" TEXTO | TEXTO ;

PIEZA         = "pon:" TIPO-PIEZA CITA { "·" ATRIBUTO-PIEZA }
              | ( "foto" | "recorte" | "prensada" ) ":" CLAVE
              | "ver:" CLAVE-VIS [ "—" CUERPO ]
              | "pica:" CLAVE [ "en" NÚMERO ]
              | "python:" NOMBRE { ARG }
              | ( "arriba" | "pie" | "nota" ) ":" TEXTO
              | "marca:" GESTO-MARCA CITA ;

COLOCACIÓN    = "en" NÚMERO NÚMERO ":" LÍNEA-CLIP
              | "en" PARTE-CUERPO "de" IDENT [ NÚMERO NÚMERO ] ":" LÍNEA-CLIP
              | RELACIÓN OBJETIVO [ "a" NÚMERO ] ":" LÍNEA-CLIP
              | RELACIÓN "cada uno:" IDENT TEXTO
              | "juntos:" LISTA "—" DISPOSICIÓN
              | ( "en el mundo" | "en el documento" ) ":" LÍNEA-CLIP ;
RELACIÓN      = "bajo" | "sobre" | "junto a" | "delante de" | "detrás de" ;

MOVIMIENTO    = [ ARTÍCULO ] SUJETO VERBO-MOV [ DESTINO ]
                { "·" ( [ "por" ] TRAYECTO | MANERA | GRANULADO ) }
                [ VENTANA ] ;

CÁMARA        = "la truca" ORDEN-TRUCA [ IDENT ] [ "en" TALLA ]
              | IDENT "mira a" IDENT
              | [ ARTÍCULO ] IDENT ( "sale" | "entra" ) "por la" LADO
              | "sonido:" CRUCE-SONIDO [ NÚMERO ]
              | "fuera de campo" [ "por la" LADO ] ":" TEXTO
              | [ "el" ] "foco" ( "en" | "pasa a" ) IDENT
              | "todo en foco" | IDENT "está" TEXTO ;

EVENTO        = ">" NOMBRE-EVENTO [ ARG ] { "·" ">" NOMBRE-EVENTO [ ARG ] } ;
ANIDAMIENTO   = "dentro:" NL { LÍNEA-CLIP } | "mientras:" LÍNEA-CLIP
              | "al decir" CITA ":" LÍNEA-CLIP ;
VENTANA       = "hasta decir" CITA | "mientras" ;

FIN           = "==" "FIN" { "=" } { TEXTO } [ ">" "silencio" NÚMERO ] ;
COMENTARIO    = "//" TEXTO | "(" TEXTO ")" | "~" TEXTO ;
CITA          = "«" TEXTO "»" ;
ARTÍCULO      = "el" | "la" | "los" | "las" ;

Todo no terminal en MAYÚSCULAS que no se define aquí es un vocabulario cerrado de §4, y esa correspondencia es exhaustiva por §9.2:

no terminaltabla
FUNCIÓN · AFECTO · TENSIÓN · ARCO§4.1–4.3
TALLA · ALTURA · FRENTE · MODO§4.4
PLANTILLA§4.5
VERBO-MOV§4.7
NOMBRE-EVENTO§4.8
TRAYECTO · MANERA · GRANULADO§4.9
ORDEN-TRUCA · GESTO-MARCA · DISPOSICIÓN · PARTE-CUERPO · VOZ · REGISTRO-LETRERO · DIRECCIÓN-LUZ · DUREZA · SENTIDO · LADO · HORA · MOVIMIENTO-MUNDO · CRUCE-SONIDO · LEJANÍA · ANCLA · TAMBOR§4.10
TIPO-PIEZA · SUSTRATO§4.12
HABLANTE§3.7.1 — declarado en REPARTO/PERSONAJE
CLAVE-VIS§4.14
NOMBRE-SECCIÓN§3.3

Apéndice B · Fuente de cada vocabulario

vocabulariomódulo · estructura
afectos, funciones, tensiones, arcos, anclas, tambores, función→plantilla, eventos, plantillas, palabras reservadas, y los menores de §4.10formato/vocabulario.py
tallas, alturas, frentes, modos, avisosformato/continuidad.py
verbos de movimiento, relacionales, trayectos, manerasmovimiento.py
granulados, secciones, familias del taller, claves de la mano, escalaformato/taller.py
lejaníasviaje.py
registros de materia, luzmateria.py
sustratospieza.py
vocesformato/sonido.py
dimensiones y autoridades de precedenciaformato/precedencia.py
catálogo ver:visualizaciones.py::CATALOGO
bandas de zmesa.py::BANDAS
encuadresmesa.py::ENCUADRES

Apéndice C · Qué cambió respecto de MESA v1

v1v2
sin secciones#TALLER, #MANO … con ley del espejo
la materia cableada en el intérpretedeclarada en el taller
el plano solo como funciónademás, plano de cine — y dos ejes declarados como tales
sin eje ni raccordsEJE y cinco avisos
la sombra por piezaLUZ por escena, teñida por la hora
verbos de movimiento sueltosvocabulario cerrado, anatomía única
la curva implícitadeducida de materia, mano, afecto y manera
semilla por posiciónH(identidad) ⊕ H(toma)
un arnésdos, con ley de arbitraje
sin métrica de saludporcentaje pobre
cuatro estratoscinco: el proscenio, para que la oclusión ocluya
el diálogo, sin implementarHABLANTE: con hablante declarado

Apéndice D · Documentos relacionados

documentoqué es
SPEC-MESA-2.mdeste: la especificación formal, normativa
SPEC-MESA.mdla de v1: superada, se conserva como historia
CHANGELOG.mdqué cambió y cuándo
PLAN-MESA.md · PLAN-B.md · PLAN-C.md · MESA-C.md · BETA-1.mdlos planes
canon/ACTA.mdlas roturas de huella, con su porqué
docs/SKILL-MESA.mdcómo se escribe un pliego, operativamente
docs/SKILL.md · docs/SKILL-PRO.mdla librería y la producción

3.7.4e · La truca en el teatro de papel (v6b)

La mesa no tiene cámara. Lo que se acerca es el mundo —el decorado y quien está en él— alrededor de un personaje:

la truca se acerca a hafsa        # ×1,75 sobre Hafsa; ella queda centrada
la truca vuelve                   # deshace
la truca se aleja                 # sinónimo de «vuelve»

Compila a truca_cine (el verbo truca a secas es el viaje sobre una tira, §3.6). Escala el estrato mundo, el suelo y los PERSONAJE vivos; el proscenio (letreros, fichas, subtítulos) no se mueve. Vale entre beats sin caminatas: la caminata usa el suelo declarado, que no se escala. El hervor respeta el tamaño (antes devolvía la pieza a su tamaño de nacimiento al cambiar de pose).

3.7.4f · apunte y los registros de rótulo

  • pon: apunte «…»: tarjeta mecanografiada (Courier 21, corta a 38 caracteres) para el comentario que desarrolla lo que la voz no dice. Es la tercera columna del pliego: datos, fuentes, quién es quién.
  • letrero (cartulina): TEXTO vive en la marquesina (y=2,75, proscenio) y muere con su beat. pon: cartulina «TEXTO» es una pieza más y cae donde la ponga el compositor: para un rótulo de sección usar SIEMPRE el letrero.
  • Las tiras bajas y alargadas (sello, dymo, apunte, verso) nunca se escalan como héroe del beat.
  • Un clip que termina se retira al cierre del beat (_despide_clips); no se queda de foto hasta la siguiente escoba.

3.10 · El aspecto: lo que entró con RADIOINTERMISIÓN (backend gx)

El corto «RADIOINTERMISIÓN» se escribe entero en un pliego, y lo que la lengua no sabía decir se le enseñó aquí. Todo vale para cualquier pliego, todo es vocabulario CERRADO (formato/aspecto.py, vocabulario.EVENTOS) y nada lleva números: los pone el motor (gx/aspecto.py: OFICIO, gx/materias.py, gx/rio.py, gx/sonido_radio.py), con el oficio de Lasseter por defecto. Se rueda con mesa toca --motor gx; el motor CE acepta el pliego y no realiza el aspecto (§9.5).

3.10.1 · Dónde se escribe: unidad, prefijo, evento

  • Líneas de unidad (en mayúsculas, como LUZ): en el preámbulo valen para todo el pliego; en un capítulo o una escena, para ella. La escena manda sobre el capítulo y el capítulo sobre el preámbulo.
  • Prefijos de pieza (como bajo «X»:), encadenables con los de sitio y con al decir: en MATERIA:, de «A» a «B»:, a la izquierda: / a la derecha:.
  • Eventos > … en un clip, en su sitio del orden del autor y anclables a la voz: al decir «GOL»: > temblor.
UNIDAD   ::= "MATERIA" materia | "BOBINA" bobina | "FORMATO" formato
           | "ESPEJO" [lado] | "PANTALLA PARTIDA" {"·" partida}
           | "RÍO TIPOGRÁFICO" ["·" modo_río] | "SIMULTÁNEO" simultáneo
           | "MONTAJE" montaje {"·" montaje} | "CAMA" efecto | "JINGLE" efecto
           | "HERVOR" ("dibujado"|"suave"|"no") | "REPITE" «escena»
           | "EFECTOS" carpeta                      (solo en el preámbulo)
materia  ::= "papel" PAPEL | "acuarela" [sobre] | "risografía" TAMBOR "y" TAMBOR ["y" TAMBOR]
             {"·" ("desregistrada"|"en registro"|"trama de puntos"|"trama de grano"|"trama de líneas")} [sobre]
           | "pincel" [sobre] | "tejido" [TAMBOR] | "tinta" [sobre] | "ninguna"
sobre    ::= "sobre papel" PAPEL
PAPEL    ::= grano fino | satinado | torchón | khadi | washi | verjurado | lienzo
           | tintado | kraft | escolar | cuaderno            (los once de la biblioteca)
TAMBOR   ::= ultramar | bermellón | naranja | ámbar | verde | rosa | violeta | humo | tinta | azurita
bobina   ::= truca | sin grano | noticiario
formato  ::= 4:3 | 16:9 | 2,39:1 ["·" "de televisión"]
lado     ::= de la izquierda | de la derecha
partida  ::= con un espejo en medio | que se miran
modo_río ::= en fila | en libertad | a pantalla completa
simultáneo ::= en rejilla | en abanico | en abanico que gira
montaje  ::= se acelera | al ritmo de las palabras | al pulso | cada vez más cerca
           | la cámara no para | mezcla «escena» {"·" «escena»}

En la línea de propiedades del preámbulo vale también formato 4:3. Y página desnuda: sin folio, sin sello «Nº» y sin campos de color; solo el papel (o la materia) y lo que se pone. Es la página de un corto, no la de un cuaderno de trabajo.

El tamaño de un dibujo se dice como el de un clip, detrás de un ·: python: patio cenital noche · a sangre (cubre el cuadro, se sale por los cuatro lados, no se pinza ni se compone, va por debajo del documento), python: radio · enorme, python: radio · grande.

3.10.2 · MATERIA del plano y de la pieza

MATERIA es de qué está hecho el cuadro: una pasada sobre el fotograma terminado (m.Pass). El plano de la mesa se lee como tinta sobre la crema del canon: dividida la crema, la tinta se reimprime sobre la materia pedida.

materiaqué hacede dónde sale
papel Xla hoja de los once papeles, con su tinte, su relieve iluminado y la tinta hundida en el granopapel.wgsl (papel_compone) de la biblioteca, con la hoja calculada en el sitio
risografía A y Bseparación en dos o tres tambores, trama, desregistro, mezcla por multiplicaciónrisografia.wgsl (imprime) de la biblioteca; desregistrada lo anima «en dos»
acuarelapigmento de Beer-Lambert: sangra mojada, bordes oscuros y granulado seca, coliflores al secaracuarela_plano.wgsl (una pasada: la de la biblioteca simula el fluido con estado)
pincelpinceladas por el flujo de la imagen (tensor de estructura), cerdas y pastapincel_plano.wgsl (una pasada)
tejidoel cuadro en punto de media (V de dos patas, lana, pelusa)tejido_plano.wgsl
tintala tinta se abre en la fibra y se encharcatinta_plano.wgsl

Sus eventos vivos: > se moja, > se seca, > se lava, > florece [TAMBOR] [en «X»] (acuarela: una mancha que crece desde una pieza y se ramifica), > se teje (el tejido avanza fila a fila), > la tinta lo cubre todo [TAMBOR] (un frente de tinta que sube y se traga el plano).

La materia de una pieza es un prefijo: en acuarela: python: gamba, en tejido rosa: pon: cartulina «PESCADOS Y MARISCOS», en tinta: python: pulpo, en risografía rosa: python: almeja, en papel kraft: …, en pincel: foto: estadio.jpg. Las capas vectoriales llevan el material del motor (set_material: papel, acuarela, riso, y los nuevos tejido, tinta y pincel, gx/materiales_radio.py); la risografía, además, set_blend multiplicar y el color del tambor; el tejido tiñe de lana el fondo y deja las letras con su color. Una foto no tiene capas: su pincel se cuece una vez con la pasada de la biblioteca (materia aplica -c pincel, seis pasadas con estado) sobre la imagen ORIGINAL, no su semitono.

3.10.3 · BOBINA

BOBINA truca (la película de la casa, la del baño), BOBINA sin grano (sin película: el anuncio, que «brilla de más») y BOBINA noticiario (sepia, rayas, parpadeo, el cuadro que baila y la imagen a 18 por segundo: la escena repite cada cuadro lo que toca). Por escena; sin línea, la del preámbulo o la del baño (baño truca).

3.10.4 · FORMATO, ESPEJO, PANTALLA PARTIDA, SIMULTÁNEO

  • El visor: en un pliego que cambia de formato (algún FORMATO que no es 16:9, · de televisión o > formato X), TODO formato —también el 16:9— es una ventana de esquinas redondas con aire de papel alrededor (el aire y el radio son del canon de Tórculo, oficio.visor_*), para que se lea como una decisión de encuadre y no como un recorte; el cambio se anima siempre, también bajo una transición; y la pasada del visor va la última: la edad del noticiario, la bobina, el grano, el soporte y la estática de la sintonía se quedan dentro. Las bandas de papel (§3.13.4) van dentro del visor. Un pliego que nunca cambia de formato se ve como siempre.
  • FORMATO 4:3 | 16:9 | 2,39:1, con bandas de tinta de canto rasgado; · de televisión redondea las esquinas y da el brillo del cristal. El cambio de formato se anima (entrada y salida lentas) si no hay una transición que lo cubra; > formato X lo cambia a mitad de escena. El compositor no pone nada bajo las bandas (son reservas del beat).
  • ESPEJO [de la izquierda | de la derecha]: una mitad se refleja en la otra (toda la escena en simetría especular). > se rompe el espejo lo rompe a esquirlas, cada una a su tiempo; > vuelve el espejo lo recompone.
  • PANTALLA PARTIDA [· con un espejo en medio] [· que se miran]: una costura en el eje (a pluma, o una franja de azogue), que se traza al abrirse; los prefijos a la izquierda: / a la derecha: ponen una pieza en el centro de su mitad, y con que se miran la de la derecha se voltea. > se parte la pantalla / > se junta la pantalla.
  • SIMULTÁNEO en rejilla | en abanico | en abanico que gira (o > … en un clip, y > un solo plano para volver): varios planos de la misma escena a la vez en el cuadro, cada casilla con su encuadre, entrando escalonadas; el abanico que gira es una turbina que pasa de cuatro a ocho planos.

3.10.5 · LA CÁMARA

eventoqué hace
> zoom de golpe [a «X»]el encuadre vectorial salta en un fotograma sobre X y se asienta con un sobrepaso mínimo
> barrido a la izquierda (… derecha, hacia arriba, hacia abajo)látigo con desenfoque de pasada; escrito el primero del clip es la transición: sale, se corta en lo más borroso, entra el plano nuevo
> plano holandés [a la …]el cuadro se inclina (con sobrante para no enseñar el canto) hasta el corte
> temblorsacudida que se apaga (los goles)
> cámara lenta · > velocidad normallo que se anima dura más; la voz no se estira
> congela la imagenuna sola estampa: sin vibración, sin grano, sin hervor, hasta el corte
> se para en seco · > arranca de golpeel congelado VIVO: todo lo que se movía se para en el sitio (la tinta hierve, el grano vive) y luego todo sigue a la vez, con un golpe
> fotograma en blancoun cuadro blanco, uno solo
> la cámara no paraderiva de mano (empuja, se va, gira un poco) hasta el final del beat
> la cámara va pegada a «X»el encuadre sigue a X en cada fotograma, cerca
> la cámara vuelvedeshace zoom, holandés y seguimiento (el corte también)

3.10.6 · LAS TRANSICIONES

Una transición escrita en un clip dice cómo ENTRA ese clip; funde a negro y funde a blanco, cómo SALE (en el final de su beat). Las de dos planos (encadena, pasa página, la mano tapa, cortinilla de tijera, iris, se quema, desenfoque de pasada, chasquido, entra de golpe, funde desde negro, funde desde blanco) son transicion.wgsl de la biblioteca: el plano que llega está vivo y el que se va es una lámina (la foto del último cuadro, con su materia, sin la película); el motor la lee en @group(1) (rama radio de Tórculo: Pass(…, pictures=…)). corta despeja en un fotograma; corta en la acción además quita la anticipación al primer movimiento. sintoniza es la del corto: la aguja de un dial cruza su banda, estática y desregistro, y el corte en lo más sucio. a la vez hace que lo siguiente empiece con lo anterior; se sostiene y retención larga, una pausa.

3.10.7 · EL RÍO TIPOGRÁFICO

RÍO TIPOGRÁFICO [· en fila | en libertad | a pantalla completa] en una escena (o > río tipográfico … en un clip): la voz de los di: y los diálogos se escribe palabra a palabra en el instante en que se dice (las palabras del sidecar, con el texto del pliego tal cual si cuentan lo mismo). En fila, un renglón que corre y no se para nunca (acelera o afloja para no alcanzar a la pluma); en libertad, cada palabra sale disparada en diagonal con su cuerpo y su letra, cruza, choca y sale (unas pocas a la vez, para que se lea); a pantalla completa, cada palabra llena el cuadro. Las MAYÚSCULAS del texto, y lo que diga > revienta «…», crecen con anticipación, se estampan con un sello y desbordan.

La frase partida: VECINO / LOCUTOR: —Podría haber sido un / partido decepcionante…. La empieza el letrero recortado del primero y la termina la pluma del segundo en el mismo renglón; la voz son dos tomas encadenadas (el sidecar lleva una lista de wav en ese beat) con el color de cada uno y el cambio cruzado en la juntura.

El letrero que vuela: de «vecino» a «vecina»: pon: rescate «¡CÁLLATE!» nace en A, se encoge (anticipación), vuela en arco y se estrella en B (aplasta y rebota).

3.10.8 · EL MONTAJE

MONTAJE se acelera · al ritmo de las palabras · al pulso · cada vez más cerca · la cámara no para · mezcla «LA RADIO» · «EL ESTADIO» · … (o los eventos > el montaje se acelera, > montaje al ritmo de las palabras, > mezcla los registros «…»): cortes dentro del beat, cada uno otro encuadre de lo mismo; al ritmo de las palabras (si el beat grita, sus MAYÚSCULAS), acelerando hasta dos fotogramas, cada vez más cerca, y con mezcla cada corte toma la materia, el formato y la película de otra escena por su título. Con el río a pantalla completa el corte no recorta la palabra.

3.10.9 · MOVIMIENTO: rastros, metamorfosis, en el sitio

  • Rastros (detrás de un · en una línea de movimiento, como una manera): con estela (un trazo de pincel que sigue a la pieza y se queda), con líneas de fuerza (Balla y Boccioni: líneas detrás, largas según la velocidad), en cronofotografía (Marey: todas las posiciones a la vez, que se van con su beat). grada salta · en cronofotografía es la grada entera en el aire.
  • Un verbo sin destino se hace en el sitio: grada salta, pichichi cae.
  • X se funde en Y (dos piezas que comparten estructura: el aro en el dial; si Y no está en la mesa, nace del bestiario), X hierve con Y (una figura que hierve entre dos identidades, por poses «en dos»), el pelo pasa de X a Y (el mismo trazo viaja de una pieza a otra: el bestiario nombra la parte en pieza.partes).

3.10.10 · ASOMA: la grieta y la escena dentro de otra

> se rasga el papel y asoma «EL PATIO»: el papel se rasga y por la grieta se ve la última imagen de esa escena; la grieta no se cierra: queda en todas las escenas que se llamen como esta. > asoma «EL ESTADIO» en el hueco: la otra escena, a escala, en una ventana rasgada en el centro (la jugada en el patio). La escena que asoma tiene que haberse rodado antes (en la misma tirada o en otra: su imagen se guarda en la caché del pliego).

3.10.11 · REPITE

REPITE «PRIMER ANUNCIO» en una escena: sus clips son los de aquella, con la misma identidad (las mismas semillas: el mismo vídeo), su mismo aspecto y su misma voz (los tiempos y los wav se toman del original).

3.10.12 · EL SONIDO

EFECTOS audio/sfx                                   (preámbulo)
REPARTO LOCUTOR: ultramar, elevenlabs A, con radio
REPARTO VECINO: rosa, elevenlabs VBL, seca
CAMA estadio                                        (escena: en bucle, bajo la voz)
JINGLE jingle                                       (escena: una vez, al abrirla)
sonido: congelador                                  (clip: el efecto, en su sitio)
al decir «ÁLAMO»: sonido: pitido
> la voz se vuelve radio

Los efectos son los wav de la carpeta de EFECTOS (su nombre es el del fichero): un nombre que no está es error. La cama se agacha sola bajo la voz (ataque rápido, suelta lenta). El tercer campo del REPARTO es el color de la voz: con radio (la banda del altavoz, un pelo de saturación y el soplido de la emisora) o seca. Las voces de ElevenLabs están ya grabadas en el sidecar (metodo: "elevenlabs"; un beat puede llevar una lista de tomas encadenadas o de tomas {ruta, desde} que suenan a la vez): el render nunca llama a la API y mesa graba no se usa en un pliego así.

3.10.12.1 · LA BANDA: música, ambientes, espacio, paneo y máster

Un pliego que declara BANDA o MEZCLA se mezcla como una película (gx/banda.py): en estéreo, por cuatro buses (VOCES, MÚSICA, EFECTOS, AMBIENTES), con un máster de sonoridad medida y sus stems. Todo en palabras; los números son del motor (OFICIO de gx/banda.py).

BANDA audio/banda                       (preámbulo: la carpeta de los cues)
MEZCLA para la web · con stems          (preámbulo: para la web | para cine; con stems | sin stems)
REPARTO LOCUTOR: azurita, elevenlabs B, seca, a la izquierda    (a la izquierda | a la derecha | al centro)
MÚSICA 1M2                              (capítulo o escena: el cue que suena; «MÚSICA ninguna»)
AMBIENTE amb radio valvulas bucle · amb estadio masa bucle      (el mundo, por capas)
ESPACIO estadio                         (la sala de los efectos: estadio | patio | estudio | radio | seco)
al decir «Y»: > entra la música «4M4»
> la música se corta · > la música se apaga
> silencio de verdad
> las voces se juntan en el centro · > cada voz a su lado
sonido: tema blanquiazul ruido a la izquierda
  • La música sigue mientras las escenas siguientes digan el mismo cue (no vuelve a empezar); al cambiar de cue, se cruza; > entra la música «X» la arranca en su instante (anclable a una palabra), > la música se corta la para en seco y > la música se apaga la funde. Un cue más corto que su tramo acaba solo; uno más largo se funde al final del tramo.
  • El ambiente es el mundo: suena en bucle (con cruce en cada vuelta) mientras dure, y puede tener varias capas separadas por ·. Las CAMA de antes son ambientes. La música se agacha bajo la voz más que el ambiente: la voz se entiende siempre.
  • El silencio de verdad corta música, ambientes y lo que ya sonaba hasta el beat siguiente, sin suelo de sala; un efecto que empieza en ese mismo instante (el crujido) suena entero.
  • El lado de cada voz sale del REPARTO; > las voces se juntan en el centro las lleva al centro a lo largo de ese beat y ahí se quedan hasta > cada voz a su lado. Un sonido: puede llevar su lado detrás del nombre.
  • El espacio es la reverberación de la sala que llevan los efectos de la escena (la voz ya trae su color en la toma).
  • Los nombres: los de sonido: y AMBIENTE se buscan en EFECTOS y, si no, en BANDA (un tema o el jingle suenan así, en el bus de música); los de MÚSICA, en BANDA. El lint dice cuál falta.
  • El máster: −14 LUFS integrados para la web (−24 para cine), picos verdaderos por debajo de −1 dBTP (limitador sobremuestreado ×4), WAV de 24 bits junto al vídeo (<salida>.master.wav), los stems en <salida>.stems/ (voces, música, efectos, ambientes: la misma ganancia que el máster, sin el limitador) y el informe en <salida>.banda.json.

mesa suena p.mesa --video v.mp4 pone la banda a un vídeo ya rodado sin volver a rodarlo (la cronología sale de v.gx.json; los efectos y los eventos de la banda, de lo que el render apuntó o de su palabra en el sidecar). Sin vídeo, --linea linea.json ({beats: {id: {t}}}) da la banda sola, en un WAV, sobre una línea de tiempo prevista.

3.10.13 · LOS PERSONAJES CON FICHA

Un personaje del bestiario con los parámetros vista, pose, expresion, boca, mano_i, mano_d, hervor (el contrato del dibujante: gx/ficha.py) es una pieza viva:

  • la vista sale del plano de la cabecera (* medio de LOCUTOR perfil · …) y de la dirección de lo que hace; se fuerza con LOCUTOR de espaldas | de perfil | de frente | de tres cuartos | de tres cuartos de espaldas;
  • acciones: LOCUTOR celebra | grita | aplaude | anda | gira el dial | señala, y los verbos de movimiento (corre, camina, cruza…) lanzan su ciclo (CICLOS de la ficha); las poses clave van «en dos», con su anticipación si está dibujada;
  • la boca de quien tiene la voz sigue sus palabras (visemas: vocales, bilabiales y f/v), sola, a doce dibujos por segundo;
  • la expresión del beat sale de su afecto, y en una palabra: al decir «ESPERA»: LOCUTOR se asombra (se asombra · se enfada · se ríe · sonríe · se asusta · se entristece · se pone serio · duda · se calma);
  • el pelo y la bufanda (pieza.partes) hacen su acción secundaria solos; las tres poses de hervor se alternan a ocho por segundo.
  • El hablante y su pieza se unen por el nombre o por un alias: del REPARTO. Un personaje es del mundo: no caduca con el ciclo del documento.

3.10.14 · HERVOR

HERVOR suave (el temblor del motor en la GPU, el de siempre), HERVOR dibujado (tres poses tembladas de cada trazo, hechas una vez, a ocho por segundo) o HERVOR no. Por escena.

3.10.15 · Combinable

Todo se combina: la cadena de cada instante es materia → lo que asoma → espejo y pantalla partida → simultaneidad → cámara → formato → noticiario → transición → sintoniza → el baño (papel y bobina). Una pasada se cambia solo cuando algo cambia; sus animaciones son envolventes en el tiempo de la escena. Ejemplos: ejemplos/radio/ (materias, camara, transiciones, registros, rio, montaje, sonido, personajes; el sonido y la foto los prepara prepara_audio.py desde el proyecto).

3.11 · Cada plano es un cartel (RADIOINTERMISIÓN, dirección radical)

La lengua de la propuesta de dirección radical (§4): los signos son piezas, la página es un espacio compuesto como un cartel, el texto se teje y la tipografía del cuento es la partitura. Gramática en formato/cartel.py, rodaje en gx/cartel.py (con gx/glifos.py y gx/silueta.py); el recorte por forma y las texturas persistentes son de la rama cartel del motor (Tórculo). Todo con vocabulario cerrado y sin un número.

3.11.1 · El plano de cartel: CARTEL y PALETA

Líneas de unidad (preámbulo, capítulo, escena; la escena manda) que valen también dentro de un clip, solo para ese plano:

PALETA verde, morado y amarillo        # el campo, la figura y el acento (+ el papel)
CARTEL columna a sangre a la izquierda · figura delante de la letra · centro vacío
  • Colores (16): rojo · morado · amarillo · verde · azul · naranja · rosa · negro · crema · minio · tinta · ultramar · celeste · lila · arena · blanco (las tintas medidas en los carteles de la casa). La letra va en papel salvo sobre un campo claro, donde va en el color de la figura.
  • Composiciones: columna a sangre a la izquierda | a la derecha · diagonal de abajo a la izquierda arriba a la derecha | de arriba a la izquierda abajo a la derecha · tercios · centro vacío · figura delante de la letra · la letra corta a la figura (= la letra delante de la figura) · campo a sangre | partido en diagonal | en bandas · disco detrás · en silueta · enorme.
  • El compositor de zonas obedece: la columna y el centro vacío se reservan; las figuras van a la otra mitad, a la diagonal, al tercio o a los cantos.

3.11.2 · Los signos son piezas

LETRA «GOL» · en Anton · a sangre · girada · a la izquierda · de amarillo
«ESPERA» es un muro
«GOL» es una ventana a «EL ESTADIO»
la O de «GOL» es balon
el «¡» de «¡CÁLLATE» es vecino
la O de «GOL» se convierte en balon        balon se convierte en la O de «GOL»
las letras de «GOL» caen                    «GOL» se estampa
la raya corta «momen»
«RADIOINTERMISIÓN» forma el patio
  • Tipos (en …): League Gothic · Anton · la serifa de Pretexto (serifa) · letra de mano · máquina de escribir.
  • Disposiciones: a sangre · en columna · girada · en escalera · en abanico · rota por el borde; sitios: a la izquierda · a la derecha · arriba · abajo · en el centro; tamaño: grande · enorme; color: de COLOR. « / » parte la palabra en líneas.
  • Papeles del signo («X» es un|una …): muro · suelo · cielo · ventana · máscara · portería · persiana · barandilla · cuchilla. ventana/máscara a|de «ESCENA» deja ver dentro de las letras la última imagen de esa escena (o, sin escena, las figuras del plano).
  • Verbos del signo (singular: la palabra; las letras de «X» …: letra a letra, escalonadas): cae · se estampa · se apila · se rompe · se abre · se separa · se va. Cada letra lleva su rig (pivote en la base, ojo en su hueco, peso) y el oficio de Lasseter (anticipación, aplastar y estirar conservando el volumen, sobrepaso, asiento).
  • La letra que es figura toma su sitio y su tamaño; la que se convierte se transforma con los contornos igualados (glifos.iguala).
  • Formas que forma una palabra: el patio | un marco (las cuatro paredes mirado desde arriba; las tildes y los puntos, ventanas encendidas) · una portería (el larguero y la red) · una columna · un muro.

3.11.3 · El blocking de cartel

en silueta: python: vecino · enorme · cortado por abajo
ESCALA vecino como grada
«GOL» tapa a pichichi           pichichi tapa «GOL»          la letra tapa al pichichi
el ojo completa «SCHLAGER»
BOSQUE de brazos y puños
  • en silueta: (prefijo) o CARTEL … · en silueta (el plano entero): la pieza pasa a silueta plana de tres tintas (figura, sombra, luz) con facetas angulosas del lado de la sombra de la LUZ de la escena, sin redibujarla; si la pieza cambia de pose, la silueta se rehace.
  • Cortes por el borde (detrás de · en una pieza): cortado|cortada por abajo | por arriba | por la frente | por la izquierda | por la derecha | por el borde.
  • ESCALA A como B: A toma la altura de B (de todo el cuadro si B es un decorado a sangre). La escala es una opinión.
  • BOSQUE de brazos y puños | de brazos | de puños | de manos: la grada como bosque de brazos en silueta, en dos filas.

3.11.3b · El blocking enorme (dirigir-saorin §40)

python: locutor_a · gigante · cortado por la frente
a la izquierda: en silueta: python: vecino · gigante · cortado por abajo
PANTALLA PARTIDA · desigual · inclinada
al decir «campo»: > la costura se mueve hacia «vecino»
al decir «tira»: jugador se sale del cuadro por la derecha
RÍO TIPOGRÁFICO · no
  • Tamaños de pieza: grande · enorme (el alto del cuadro) · gigante (entre 1,6 y 2,2 veces el alto; sin corte, se corta por abajo) · a sangre (llena lo que se ve: el 4:3 hasta las bandas, o su mitad).
  • El corte decide qué se ve: por abajo (la cima rozando el canto de arriba), por la frente (el canto pasa por la frente: la cara entera, sin cráneo; la cabeza sale de partes["cabeza"] o de la proporción de una figura de pie), por arriba, por la izquierda | por la derecha (media figura fuera, la otra media llenando su cuadro).
  • En la PANTALLA PARTIDA cada mitad es el cuadro: tamaño, sitio y corte se miden contra ella, y lo de una mitad no invade la otra (recorte por forma). · desigual (una mitad grande y la otra estrecha), · inclinada (la costura en diagonal); > la costura se mueve hacia «X»: la mitad de X crece (el que habla le come sitio al otro), con anticipación y asiento.
  • X se sale del cuadro [por la derecha | izquierda | arriba | abajo]: X se carga, cruza el canto y el cuadro se abomba donde lo cruza y vuelve con un rebote (pasada empuje, detrás del formato: las bandas también ceden).
  • RÍO TIPOGRÁFICO · no apaga el río en esa unidad (tampoco lo enciende la PARTITURA).
  • TEJE y SINTONIZA aceptan tamaño y disposición (· enorme | gigante · a sangre · en columna · girada …); gigante hace la palabra más ancha que el cuadro y la última línea la corta el borde de abajo, como la pantalla de carga de Pretexto.

3.11.3c · La salvaguarda: lo esencial no se corta

Un corte por el borde (y gigante) nunca se lleva lo esencial de la pieza: la cara y la boca de quien habla, la mano que actúa, el objeto que importa (lo que la pieza declara en partes —cara, boca, cabeza, mano, objeto— o en _esencial; si no declara nada, su centro). Si el corte lo saca, la pieza vuelve lo justo; si ni lo esencial cabe, encoge alrededor de ello. Las letras que hay que leer se leen: ningún corte se lleva más de un pelo de una letra (un cuarto, si se pidió rota por el borde o gigante); el muro llena el cuadro de alto y deja la palabra entera de ancho. El permiso se escribe: · sin leer (en la pieza o en la LETRA) deja cortar lo que sea.

«ESPERA» es un muro con el río en fila: el muro deja sitio a la derecha y el río se estrella contra su cara (cada palabra se aplasta y cae al montón). la raya corta «momen» corta la palabra donde esté: en el cartel o dentro del río (se para en seco y se parte). Una composición escrita suelta en el clip (la letra corta a la figura, centro vacío) es la del plano.

3.11.4 · El texto se teje

TEJE «RADIO / INTERMISIÓN» · en la serifa de Pretexto · con la aguja del dial
SINTONIZA «RADIOINTERMISIÓN»
«RADIOINTERMISIÓN» se interrumpe en «RADIO»
«RADIOINTERMISIÓN» sigue
los hilos de VECINO y LOCUTOR se entretejen
FRASES «así es» · «hoy nos espera una jornada» · «de tensiones vecinales»
> la tela se enreda          > la tela se desenreda          > se desteje
> la mancha deja «ES AZUL» en reserva
  • TEJE: la palabra se teje fila a fila mientras la lanzadera (o la aguja roja del dial) va y vuelve. Las letras son la forma (recorte por forma: el borde nítido) y dentro se ve la malla de puntadas en V que deja la lanzadera, sobre la letra en un tono más claro. Por defecto, gigante.
  • SINTONIZA: las letras llegan desordenadas, parpadeando y desregistradas entre estática, y se ordenan cuando la aguja se clava.
  • se interrumpe en «X»: la palabra se compone entera pero solo se ve hasta X, y queda guardada; sigue, en otra escena, la recompone igual y teje lo que faltaba (el título con una intermisión dentro).
  • los hilos de A y B se entretejen: dos hilos con los colores del REPARTO.
  • FRASES: la banda de frases de colores que corre por arriba.
  • La tela (> la tela se enreda, > se desteje) es una pasada con estado del motor: el enredo se acumula fotograma a fotograma; al destejer, cada pasada de hilo se va de derecha a izquierda a su ritmo y queda el papel.
  • > la mancha deja «X» en reserva [de COLOR]: una mancha crece hasta llenar el cuadro y deja las letras de X en blanco (recorte por forma, «fuera»).

3.11.5 · La tipografía del cuento como partitura

PARTITURA texto/cuento.md

En el preámbulo. El compilador busca en el texto original el tramo que dice cada beat y su tipografía propone lo que el clip no dice: cursiva (_…_, *…*) → la radio (río en fila); guion (- …) → el vecino (su grito en letra de cartel); raya (— …) → la cuchilla corta la última palabra del tramo anterior; MAYÚSCULAS → revientan; un párrafo largo sin puntuación → la cámara no para. Lo que el clip declara manda.

Solo se GRITA lo que es un grito: una exclamación o unas mayúsculas breves (hasta diez palabras) van en letra de cartel; una frase dicha del vecino (con su punto, aunque sea corta) va en una tira pequeña de papel recortado al canto. Ningún rótulo tapa una cara del plano (lo esencial de cada figura con cara, boca o cabeza): se aparta a una banda o a un lado y, si no cabe, encoge. Una LETRA, TEJE o SINTONIZA del clip sustituye al grito o la tira de la partitura. Para apagarla: PARTITURA · no (en una escena o un clip: nada de la partitura) o PARTITURA · sin gritos (ni grito ni tira; el resto sí); en un clip también sin partitura y sin gritos.

3.11.6 · El motor (rama cartel de Tórculo)

  • mob.set_clip("mascara" | "dentro" | "fuera", nombre): recorte por forma en la composición (el estadio dentro de GOL, la mancha que deja letras en reserva, la raya que parte una palabra); vale en vista 3D.
  • m.Pass(shader, estado="nombre", pasos=N, paso="paso"): textura persistente de la cadena (@group(2)), paso fijo determinista; el estado sobrevive a los cambios de cadena.

Ejemplos: ejemplos/cartel/ (signos, composicion, tejido, partitura).

3.12 · La imagen que oye, la luz, el soporte y la intensidad (backend gx)

Lo que pidió la especificación de radicalidad de RADIOINTERMISIÓN (§5 la imagen que oye, §6 el color y la luz, §7 la degradación como dramaturgia, §8 y §9.6 la intensidad como parámetro de dirección). Vocabulario CERRADO (formato/oye.py), sin números: los pone el motor (gx/oye.py: OFICIO, gx/materias/luz.wgsl, gx/materias/soporte.wgsl, gx/espectro.py, oido.py). Ejemplos que se miran: ejemplos/oye/*.mesa (antes, python prepara.py: el sidecar con las tomas del proyecto).

3.12.1 · El oído: lo que suena, en curvas

El motor oye el audio real: la voz de cada beat (el wav del sidecar), la CAMA y el JINGLE de la escena, cada sonido: y lo que el espectrograma haga sonar. Cada wav se lee una vez y se guarda en la caché como curvas a cien muestras por segundo, con su contenido como llave (oido.py):

curvaqué es
intensidadvolumen en escala absoluta (−50 dBFS → 0, −6 → 1), con ataque rápido y suelta lenta; se suma en potencia entre pistas
relativavolumen respecto a la propia toma (lo que una palabra se dice más fuerte que otra)
tonoaltura respecto al tono medio de la toma, en octavas (YIN)
ataqueimpulso en cada sílaba o golpe, que decae; ataques son esos golpes
centroideel brillo del sonido
bandasel espectrograma en 32 bandas logarítmicas

python -m manim_saorin.oido toma.wav --png curvas.png [--palabras sidecar.json:r03_03] dibuja lo que el oído oyó y mide cada palabra.

Pistas (vocabulario cerrado): la voz (quien habla en el beat), la música (cama, jingle y temas), la cama, los efectos, la radio (todo lo que suena), un efecto de EFECTOS (o un cue de BANDA) entre comillas («estadio rugido gol»), o el nombre de lo que suena sin comillas (del estadio: el ambiente o el efecto que suena con ese nombre; si no suena ninguno, el primer efecto que lo lleve, los ambientes primero). El oído oye también la MÚSICA, el AMBIENTE y los eventos de la banda (§3.10.12.1).

3.12.2 · Las frases de la imagen que oye

En una unidad (preámbulo, capítulo o escena) valen para toda ella; en un clip, con > o sin él, desde ese instante hasta el final del beat (y se anclan: al decir «GOL»: > la cámara respira con la voz).

la cámara respira con PISTA        la intensidad empuja hacia delante, el tono sube o
                                   baja la altura, cada golpe de sílaba da un temblor
> la cámara deja de respirar
el río mide la voz                 en el río, cada palabra mide lo que la voz hizo con ella
la luz sube con PISTA              la fuerza de la LUZ de la escena sigue a la pista
el dial es la línea de tiempo      (preámbulo) la aguja de todo dial avanza con el corto
                                   y salta de emisora en cada cambio de mundo
X es el espectrograma de PISTA     (clip) la superficie X hecha del espectrograma
                                   («el campo es el espectrograma del estadio»)
  • La cámara respira: un delta sobre el encuadre que se deshace y se rehace en cada fotograma (se suma a lo que haga la cámara). Empuja con la frase (volumen relativo y absoluto, suavizado) y con el pulso de cada palabra; sube con el tono; tiembla con los golpes. Su fuerza crece con la INTENSIDAD si el pliego la declara. Una cámara física que la quiera como fuerza lee mesa._oido.respiracion(t) (ver NOTAS_LENGUA.md).
  • El río mide la voz (RÍO TIPOGRÁFICO en cualquiera de sus modos): el cuerpo de cada palabra es el volumen con que se dice; su peso (de ultraligera a negra), la emoción (volumen, tono y lo que el tono se mueve); su inclinación, la velocidad (sílabas por segundo respecto a la toma); y una palabra que dura más de lo que pide (un GOOOOOOL) se estira mientras se dice y se escribe lo que dura.
  • El espectrograma: abajo, las graves (cerca) son la hierba: cada brizna mide su banda en ese instante y el viento que la inclina es el brillo del sonido; arriba, las agudas (lejos) son la grada: una cabeza por celda, del tamaño del grito; la valla las separa. El paisaje corre con el sonido (lo que suena ahora, en el centro); si el sonido no sonaba, lo hace sonar. Si hay en la mesa una pieza con ese nombre, el espectrograma la cubre; si no, se pone a sangre en la mitad de abajo y se llama así en el índice.
  • El dial: toda pieza con partes aguja y escala (la radio y la banda_frecuencias del bestiario) lleva la aguja donde va la película (los DUR del pliego entero, también al rodar un capítulo suelto); en cada escena nueva salta, con sobrepaso y asiento, y dentro de ella tiembla y avanza despacio.

3.12.3 · La luz y el color

La LUZ de la escena (que ya decía de dónde caen las sombras) dice además su FUENTE: una sola, dura, por mundo. Va la primera de la cadena: la materia imprime ya la luz.

LUZ de «radio» · desde abajo · ámbar   la fuente sale de esa pieza; todo lo demás es noche
                                       (desde abajo | desde arriba | desde la izquierda |
                                       desde la derecha; un tambor para su color)
LUZ de los focos · en contraluz        las figuras en silueta plana con un filo de luz,
                                       el fondo arde; los destellos, formas de risografía
LUZ plana · de estudio                 el brillo plano del anuncio
COLOR monocromo [TAMBOR] | COLOR pleno la escena en un solo tambor (humo: el gris frío)
> estalla el color [en «X»]            el color vuelve desde X en un frente mellado
> el color se apaga                    y se vuelve a ir
> destellan los focos                  un destello (los golpes de la pista que sube la luz
                                       también destellan, en contraluz)

La fuente va pegada a su pieza: si la pieza o la cámara se mueven, la luz se mueve con ellas. La luz de la fuente se recorta en tres tonos planos con un borde de papel cortado (luz de cartel, no de render).

3.12.4 · El soporte: la degradación como dramaturgia

SOPORTE limpio | usado | gastado | sucio | roto
> el soporte empeora          un paso más: grano, desregistro, trama, tinta corrida
> el soporte se deshace       la imagen pierde su materia (la disolución)
> el soporte se limpia        papel limpio otra vez, casi blanco, y se asienta

El soporte dura TODA la película: lo que un gol estropea sigue estropeado en la escena siguiente. El SOPORTE del preámbulo es el de partida; el de una escena o un capítulo se pone al abrirla. La pasada soporte va tras la cámara (el papel no se mueve con ella): desregistro de las tintas (a doce dibujos por segundo), tinta corrida en la fibra y alguna mancha, trama de medio tono en los grises, grano, y la materia que se va con un borde de fibra.

3.12.5 · La intensidad como parámetro de dirección

INTENSIDAD PALABRA [· extraña] [· con PISTA]
INTENSIDAD de PALABRA a PALABRA [· …]      una rampa a lo largo de la escena
> la intensidad sube a PALABRA | cae a PALABRA | salta a PALABRA
PALABRA ::= nula · quieta · serena · templada · viva · agitada · tensa ·
            encendida · desatada · furiosa · rota            (0 … 10)

· con la voz hace que la pista empuje la curva arriba y abajo; · extraña invierte la inclinación y manda el desregistro en vertical (la disolución). La curva gobierna a la vez, sin otra línea:

quécómo
temblorcámara de mano continua, de nada (por debajo de viva) a unos 20 px
inclinaciónel holandés que crece por grados (desde tensa; unos 11° en rota)
desregistrode las tintas, en la pasada del soporte (el termómetro)
granoen la pasada del soporte
duración de plano y montajeMONTAJE al pulso corta con la duración que pide (de 4 s a 2 fotogramas)

mesa intensidad p.mesa [--json curva.json] imprime el mapa del pliego (como el de la especificación, con su tira) y escribe la curva y lo que gobierna para otros frentes. En el rodaje: mesa._direccion.intensidad(t) y mesa._direccion.parametro("temblor" | "plano" | "desregistro" | "grano" | "inclinacion" | "montaje", t).

3.12.6 · En la cadena

luz → materia → asoma → espejo → simultaneidad → cámara (con el giro de base de la intensidad) → soporte → formato → noticiario → transición → sintoniza → baño. La luz y el soporte leen sus curvas de una lámina de una fila (pictures=), muestreada con el tiempo de la escena: se ponen una vez por beat (y cuando un evento cambia algo) y se animan solas.

3.13 · La cámara como objeto, la profundidad, el tiempo y el cuadro (RADIOINTERMISIÓN)

La especificación de radicalidad del corto (§9.1–9.4 y §9.7) pide una cámara de verdad, no un desplazamiento de imagen: con masa, con lente, con profundidad, que se monta en las cosas, que atraviesa marcos y letras; un tiempo que se rompe por capas; un cuadro que es un objeto; y una forma explícita de romper las reglas con permiso. Todo es vocabulario CERRADO (formato/camara.py), sin una cifra: los números viven en el motor (gx/operador.py: OFICIO_CAMARA, gx/profundidad.py: OFICIO_FOCO, gx/tiempo.py: OFICIO_TIEMPO, gx/cuadro.py: OFICIO_CUADRO). Se rueda con --motor gx. Sin nada de esto en el pliego, nada cambia: el operador no toca el encuadre, la escena sigue en 2D.

UNIDAD   ::= … | "CÁMARA" cámara {"·" cámara} | "HORIZONTE" horizonte
           | "CADENCIA" cadencia {"·" cadencia} | "GOLPES" golpe {"·" golpe}
           | "PISTA ÓPTICA" [lado_pista]
cámara   ::= normal | gran angular | teleobjetivo | ojo de pez       (la lente)
           | ligera | con masa | pesada                             (la masa)
           | en trípode | al hombro                                 (la mano)
           | profundidad total | poca profundidad                   (el foco)
horizonte ::= recto | se inclina | gira
cadencia ::= BLANCO ("en uno" | "en dos" | "en tres" | "en cuatro")
BLANCO   ::= las figuras | la letra | el fondo | lo de delante | la cámara | todo
golpe    ::= con impacto | con borrón
lado_pista ::= a la izquierda | a la derecha
DISTANCIA ::= delante | al pie | cerca | al paso | a media distancia | lejos
           | al fondo | en el horizonte | en el cielo                 (prefijo: `lejos: python: fachada`)
formato  ::= … ["·" "bandas de papel"]

3.13.1 · La cámara como objeto físico

La cámara de una escena con cualquiera de estas cosas es la cámara 3D de ManimGX (perspectiva real): el papel y los muebles de la página se van detrás del cielo, agrandados para que no se les vea el canto aunque la cámara gire. Es un delta sobre el encuadre: lo que hacen los demás (el zoom de golpe, la cámara pegada, los cortes del montaje, la respiración de la imagen que oye) se suma y no se pelea.

escritoqué hace
CÁMARA ligera · con masa · pesadala masa del operador: arranca un pelo tarde, se pasa del objetivo y vuelve (sobrepaso y asiento)
> la cámara va a «X»panorámica con masa hasta X
> la cámara se acerca a «X» · > la cámara se alejatravelling de verdad (dolly): lo de delante crece más que lo de detrás; lo que está entre medias pasa por delante
> la cámara sube · > la cámara bajagrúa
CÁMARA normal · gran angular · teleobjetivo · ojo de pez y > gran angular… > lente normalfocal y distancia separadas: el ancho que se ve en el plano del sujeto no cambia; el gran angular separa las capas (paralaje fuerte) y abomba un poco, el teleobjetivo las aplana (la grada como un muro), el ojo de pez abomba mucho y deja las esquinas fuera de su círculo
> vértigo [sobre «X»] · > vértigo al revés [sobre «X»]el travelling con zoom inverso de Hitchcock: X se queda del mismo tamaño y el fondo se estira (o se echa encima). Necesita capas
CÁMARA al hombro · `> la tensión subecae
HORIZONTE se inclina · > el horizonte se inclina · > el horizonte se enderezael holandés que no es fijo: un paso más en cada golpe (temblor, zoom de golpe, arranca de golpe, lo que revienta en el río, el salto axial); es del partido, no se reinicia al cortar. HORIZONTE gira: el cuadro no para de girar
`> el cuadro gira [a la izquierdaa la derecha]·> el cuadro se endereza`
> la cámara va montada en «X»snorricam: X quieta en el centro, el mundo corriendo alrededor; el cuadro se ladea con su cuerpo
> la cámara gira alrededor de «X»órbita: las piezas son láminas de papel en el espacio y se les ve el canto
> tiempo bala sobre «X»el congelado vivo y la órbita a la vez (el instante congelado)
> la cámara entra en «X» · > la cámara sale de «X»atravesar: por el hueco de la pieza (la O de «GOL» de la rama cartel, si está; si no, su centro) hasta dejarla atrás; o empezar dentro y salir
> la cámara mira desde dentro de «X»desde dentro de las cosas: X pegada a la cámara, tan grande que su canto enmarca el plano (la costura del balón, la tapa del congelador, la boca); la cámara se mece dentro
> la cámara atraviesaatraviesa todas las capas, de delante al fondo
> plano secuencia por «A», «B» y «C»una trayectoria sin corte que pasa por las piezas en orden, atravesándolas
> salto axial a «X» · > triple salto axial a «X»Kurosawa: saltos secos sobre el mismo eje, sin muelle
> barrido a la derecha (el primero del clip)el látigo como transición (§3.10.5): ya existía
> pasa por delante «X»lo que tapa el plano: una forma enorme (del bestiario, o una silueta plana; bufanda es una bufanda a rayas) cruza pegada a la cámara; escrito el primero del clip, el corte va escondido debajo
> la cámara vuelvedeshace también todo lo del operador (salvo el horizonte, que es del partido)

3.13.2 · La escena con profundidad

lejos: python: fachada pone la pieza a esa distancia de la cámara, agrandada lo justo para verse en reposo donde el compositor la puso: el paralaje no se declara, sale de la perspectiva al moverse la cámara. Una capa es del mundo (dura su escena; si el clip siguiente la vuelve a pedir a la misma distancia, se queda la que había). Lo que va · a sangre a una distancia se agranda de más para que la cámara no le vea el canto. El cielo está en el infinito: lo de en el cielo no tiene paralaje al moverse la cámara, no cambia de tamaño con la lente y su campo se ensancha (sin mover la luna) para que nunca se le vea el canto.

El foco (§3.7.6, ahora vivo en GX y anclable a la voz):

escritoqué hace
el foco en XX nítido; lo que está a otra distancia, desenfocado según cuánto se aleje (con capas); sin capas, foco selectivo
el foco pasa a Xel cambio de foco, sin corte
el foco en X y en Yla dioptría partida (De Palma): cada mitad del cuadro, enfocada a su distancia
todo en focola profundidad de campo total (Welles)
CÁMARA poca profundidad · profundidad totalcuánto desenfoca lo que no está a la distancia del foco

Lo desenfocado no es un blur fotográfico (§5.9): está más pálido, con el canto blando y algo más grande (un halo de copias tenues de la pieza). El texto no se desenfoca nunca, salvo > sin leer porque «…».

3.13.3 · El tiempo por capas

escritoqué hace
CADENCIA las figuras en dos · el fondo en cuatro · la cámara en unocada capa dibuja a su ritmo: lo retenido enseña el dibujo de su último tic y la animación sigue por debajo. el fondo son las capas de lejos en adelante; lo de delante, delante, al pie y cerca; todo, el cuadro entero
> rampa de velocidadlo que se mueve a partir de ahí va a velocidad real, se frena hasta casi parar y arranca de golpe
> cámara lenta a saltosstep-printing (Wong Kar-wai): lenta, cada dibujo tres fotogramas y una estela de los dos anteriores; hasta el corte
> todo se para menos «X»el congelado vivo de todo menos una cosa (la cámara también se queda quieta); > arranca de golpe lo suelta
`> barrido temporal [hacia abajohacia arriba
GOLPES con impacto · > fotograma de impactoen cada golpe, un fotograma de silueta pura: a dos tintas (tinta sobre minio) o en negativo, alternando
GOLPES con borrón · X corre … · con borrónen los gestos rápidos, el cuerpo estirado en un solo fotograma (smear): el canto que va delante se queda y lo de detrás se estira

3.13.4 · El cuadro como objeto

escritoqué hace
FORMATO 2,39:1 · bandas de papellas bandas son dos tiras de papel entintado con canto rasgado, pegadas al cuadro (ya no una pasada)
> las bandas bajan · > las bandas subencomo persianas, con su rebote
`> se rasga la banda de arribade abajo
`X empujaagarra
X se apoya en la banda de abajocomo en una barandilla; la banda cede un poco
> asoma «ESCENA» en «X»el cuadro dentro del cuadro: la última imagen de otra escena dentro de una pieza (la tele, la ventana, el visor); con > la cámara entra en «X» el corte cae dentro
`> la línea se mueve a la izquierdaa la derecha
PISTA ÓPTICA · > la pista se desborda · > la pista vuelvela pista de área variable al borde, con la onda de la voz que suena (del wav del sidecar); desbordada, llena el cuadro
> se ven las perforaciones · > se van las perforaciones · > el fotograma se descarrilael celuloide: los agujeros a contraluz; el fotograma resbala, se ve la línea de fotograma y vuelve a engancharse
X mira a cámarala cuarta pared (una línea de ficha): de frente, serio, y la cámara se le acerca, pesada

3.13.5 · Romper con permiso

El compositor y la revisión Lasseter tienen reglas. Un plano puede romperlas a sabiendas, con su porqué (la frase del texto que lo pide). Romper queda escrito: el lint exige el porque, mesa por-que lo cuenta y la revisión Lasseter lo lista aparte («roto con permiso») sin contarlo como error.

escritoqué regla rompe
> rompe el eje porque «…»el eje (el aviso de SALTO DE EJE; equivale a > cruza el eje)
> se sale del cuadro porque «…»nada fuera de cuadro: la pinza no recoloca las piezas de ese plano
> sin leer porque «…»la legibilidad: el aviso de lectura y la regla de no desenfocar texto
> demasiado rápido porque «…»los movimientos de menos de ocho fotogramas, lineales o sin anticipación
> todo a la vez porque «…»no más de tres cosas moviéndose a la vez
> sin respiro porque «…»la pausa viva al final del beat

Los encuadres incómodos con nombre son ya roturas declaradas (del cuadro y, los que cortan, de la talla): el porque se escribe igual.

escritoqué encuadre
> demasiado cerca de «X»X desborda el cuadro por todos lados: la boca, los dientes
> cortado por la frente «X» · > cortado por la barbilla «X»el borde corta la cabeza: solo la boca que grita y la bufanda (o al revés)
> aire al revés «X»X pegada al borde y todo el cuadro vacío detrás de ella
> mirando fuera de campo «X»X pegada al borde mirando hacia fuera; lo que mira no se enseña
> el que habla fuera de campola voz de uno sobre la cara del otro, que escucha
> cuadro vacío [«X»]el sitio sin la persona (o sin quien habla) mientras se oye su voz

3.13.6 · Combinable

La cadena de cada instante queda: materia → lo que asoma → espejo y pantalla partida → simultaneidad → cámara → lente → tiempo (impacto, barrido temporal) → formato → noticiario → cuadro (perforaciones, descarrilamiento) → transición → sintoniza → el baño. El operador consume la respiración y la intensidad de la imagen que oye (rama oye) como fuerzas. Ejemplos que se miran: ejemplos/camara/ (capas, lentes, mano, atraviesa, tiempo, cuadro, romper; el sonido lo prepara prepara_audio.py desde el proyecto).

Trampas: las piezas sin al decir se reparten por las frases de la voz (la segunda pieza cae en la segunda frase): ancla los eventos de cámara después de que entren sus piezas, o ancla las piezas a la primera palabra. Si la pieza aún no ha entrado, el operador espera a que entre. Un movimiento va hasta otra pieza o hasta fuera de campo [por la izquierda | por la derecha] (no hasta «la derecha»).

Lo que no hace todavía: un plano secuencia que cruce de una escena a otra sin corte (dentro de una escena sí; entre escenas, > la cámara entra en «X» deja el corte escondido); el desenfoque de lo que no tiene capas es selectivo por pieza, no por distancia; la cadencia por capa retiene la forma (los puntos) pero no el color.

3.14 · El proyecto portable: mesa empaqueta, desempaqueta, comprueba

Un corto de la casa es el pliego + su bestiario + su sonido (la voz con su sidecar, los efectos, la música) + lo que el pliego lea (la PARTITURA, un TALLER importado, los clips, el lock de las láminas, la ficha de los clips). Nada se apunta a mano: formato/paquete.py lo descubre leyendo el pliego y el bestiario (con ast, sin ejecutar código del proyecto).

mesa comprueba x.mesa [--lista] [--arregla]   # ¿completo y portable?
mesa empaqueta x.mesa [-o x.mesapack]         # un solo archivo
mesa desempaqueta x.mesapack [carpeta] [--instala-fuentes]

3.14.1 · Qué entra

de dóndequé
el pliegoél mismo; <pliego>.lock; clips/fichas.json; toda palabra de una línea que sea un archivo o carpeta del proyecto (PARTITURA, TALLER x.taller, clip:, foto: x.jpg, MUSICA)
EFECTOS, BANDAtodos los audios de la carpeta: el motor los busca por nombre y, a veces, por aproximación en la tabla entera
PYTHONel cierre de imports locales del bestiario y las cadenas que nombran archivos del proyecto
la vozel sidecar, reescrito con rutas relativas al pliego; las tomas que vivían fuera (la caché de Supertonic) entran en audio/voz/
las fuenteslas de LETRA … · en X y las fuente="X" del bestiario: si están en el motor (fuentes_cartel) o en macOS no viajan; si las instaló el usuario, van en _fuentes/
el archivo de la casalas fotos de foto: que ya están en la caché, en _archivo/ (vuelven a la caché al desempaquetar)

Lo que el bestiario lee de la instalación (Tórculo, ~/Library/Fonts) no viaja: queda escrito en el manifiesto.

3.14.2 · El paquete

Un zip (los audios, vídeos e imágenes sin recomprimir) con el árbol del proyecto y MANIFIESTO.json: formato (mesapack 1), pliego, titulo, versiones (la lengua, EPOCA_MESA; el motor, versión, commit y rama de manim-saorin; Tórculo y su ManimGX, por commit), voces (el reparto con sus voces y cuántas tomas hay de cada método), fuentes, externos, no_portable y archivos (sha256, bytes y por qué entra cada uno).

desempaqueta no escribe fuera de su carpeta (rechaza rutas absolutas y ..), comprueba cada hash y termina con comprueba.

3.14.3 · Las rutas relativas, en todo el motor

Un sidecar puede guardar cada wav relativo a su propia carpeta (la del pliego) o absoluto. tiempos.carga_sidecar resuelve las relativas al cargar, así que valen en mesa toca, en --motor gx (también con --tiempos de otro pliego), en la voz por el motor (m.sidecar), en el oído, en la mezcla y en sentido voz. mesa graba ya escribe relativas las tomas que caen dentro del proyecto.

Un proyecto copiado o movido cuyo sidecar apunta a la carpeta vieja se reancla solo: si la misma toma (mismo sufijo de ruta y mismo tamaño) está en la carpeta nueva, se usa esa. mesa comprueba --arregla deja el sidecar relativo (con copia .bak) y trae al proyecto la voz que vive fuera.

3.14.4 · mesa comprueba

Error (sale con 1): falta algo (el bestiario, la PARTITURA, una toma, la carpeta de EFECTOS), una ruta absoluta al propio proyecto en el bestiario, tomas con ruta absoluta o fuera del proyecto, un bestiario o una carpeta de sonido fuera del proyecto. Aviso: una fuente que no está en ningún sitio; en un proyecto desempaquetado, la lengua, el motor o Tórculo distintos de los del paquete y los archivos que cambiaron desde que se empaquetó.

Medido (2026-10-15): RADIOINTERMISIÓN entera cabe en 219 archivos y 199 MB (de los 3,1 GB de la carpeta); desempaquetada en otra carpeta, la animática de la secuencia 8 (--cap 9 --sonido --motor gx) sale idéntica bit a bit (vídeo y audio) a la del proyecto original, y un vigía de auditoría de Python no registró una sola lectura de la carpeta original.

3.15 · La vida (dirigir-saorin §41, ley fundamental)

José Luis, 15-10-2026: «TODO debe estar vivo, moverse, cambiar de ángulo, tener acciones, que sus extremidades cambien. Alejarse, acercarse, etc. ESTA ES UNA LEY FUNDAMENTAL: LA VIDA».

Ningún personaje ni objeto se queda en su pose fuera de los frenos del vídeo. La vida va por defecto: el pliego no la escribe; escribe las acciones y los giros, y el motor pone lo demás. Backend: --motor gx (gx/vida.py el cerebro, gx/ficha.py el dibujo, gx/objetos_vivos.py, gx/vida_mide.py la comprobación).

3.15.1 · El esqueleto: el contrato ampliado de la ficha

Una ficha del bestiario (§3.10, vista, pose, expresion, boca, mano_i, mano_d, hervor) anima POR ESQUELETO si además declara:

fn.ANGULOS(nombre) -> dict   # la pose clave «nombre» en ángulos
fn.MANOS_LIBRES = ("i",)     # con qué brazos gesticula (opcional; el del
                             # micrófono no se suelta)

y acepta pose como diccionario de ángulos y vista en grados (0 frente, 40 tres cuartos, 90 perfil, 140 tres cuartos de espalda, 180 espalda). El vocabulario del esqueleto es el del muñeco de estudio:

clavequé es
x, z, bajala pelvis: dónde está y cuánto se agacha
inclina, ladea, torsion, giroel tronco y el cuerpo entero
cabeza = (giro, cabeceo, ladeo)el cuello
brazo_d/i = (barrido, separación, codo)hombro y codo (la mano va con el antebrazo)
pierna_d/i = (barrido, separación, rodilla), pie_d/icadera, rodilla, tobillo
melenala capa del pelo largo
parpado (0..1), mirada = (dx, dy), cejael rostro: lo suma la cara sobre la expresión

Sin ese contrato la ficha vive como marioneta: sus poses dibujadas y, encima, la misma vida aplicada a sus partes por sus pivotes (partes con pivote_mob: el cuerpo que respira y se balancea sobre los pies, la cabeza y los brazos que giran).

3.15.2 · Pose a pose, con Lasseter

Una acción (X celebra, X señala, X se sienta) no cambia de dibujo de golpe: cada articulación va de la pose que tenía a la nueva con su intercalado, redibujando la pluma «en dos» (doce dibujos por segundo):

  • anticipación: un amago hacia atrás antes de salir (el 20 % del tiempo, un 10 % del recorrido); si la ficha tiene <acción>_anticipa, esa pose va delante;
  • sobrepaso y asiento: sale con decisión, se pasa y asienta;
  • superposición: el tronco tira; los brazos llegan 0,05 s después, el codo y la mano 0,1 s, la cabeza 0,1 s, el pelo 0,16 s;
  • la duración sale de cuánto se mueve el cuerpo (0,22 a 0,75 s);
  • una pose nueva que llega antes de asentarse la anterior empalma sin salto (cada articulación sale de donde estaba en su propio tiempo).

Los ciclos (corre, anda, habla, aplaude) interpolan entre sus dibujos con la fase continua y se desplazan con el movimiento de la pieza (X corre hasta Y).

3.15.3 · La capa de vida por defecto

Todo personaje con ficha en cuadro, sin que el pliego lo diga, y con semilla (la misma toma, la misma vida):

  • respira (periodo propio de 3,4 a 4,4 s): pecho, brazos, cabeza;
  • cambia el peso de pierna cada 2,4 a 5 s: la cadera cae del lado que descansa, esa rodilla se afloja y adelanta (se lee de frente y de perfil);
  • se reorienta: el cuerpo gira unos grados cada 3 a 6 s (cambia de ángulo);
  • mueve la cabeza y la mirada cada 0,9 a 2,3 s, con sobrepaso; nunca enseña la nuca (si el cuerpo no está ya de espaldas, la cabeza no pasa del perfil);
  • ajusta las manos cada 1,5 a 3,6 s (la del micrófono, apenas);
  • parpadea cada 2 a 4,8 s (a veces dos veces);
  • tics de quien no habla cada 3 a 6,5 s: se ajusta las gafas, la mano a la cadera, se rasca la nuca, la mano a la barbilla, al pecho;
  • debajo de todo, una deriva lenta (moving hold) que nunca deja la silueta quieta;
  • la energía sale del afecto del beat (eufórico 1,45 … exhausto 0,6).

3.15.4 · Actuar la voz

Quien tiene la voz del beat la actúa a partir del sidecar (las palabras y sus tiempos), sin una palabra en el pliego:

  • un gesto en la tónica de las palabras con contenido (la sílaba tónica sale de la ortografía: la tilde manda; si no, llana si acaba en vocal, n o s), uno por golpe de frase (al menos medio segundo entre golpes): preparación (anticipación), golpe rápido, retención y vuelta;
  • el repertorio de cada personaje (de su semilla): batuta, abre, puño, cuenta, ofrece, corta, señala; nunca el mismo dos veces seguidas;
  • la cabeza cabecea en el golpe y el tronco se inclina hacia quien escucha mientras dura la frase;
  • las MAYÚSCULAS y las exclamaciones son gritos: el cuerpo entero (los brazos arriba con los puños, el pecho atrás o hacia el micrófono, la cabeza arriba, temblor); las vocales estiradas (GOOOOL) más;
  • «jajaja» es una risa que sacude (cuerpo, hombros y cabeza) con la cara de risa.

Quien escucha reacciona: mira al que habla (cabeza y ojos), asiente en una de cada tres tónicas, se indigna cuando el otro grita (retrocede, niega con la cabeza, abre la mano, cara de enfado) y niega, serio, con la risa ajena.

3.15.5 · Desplazamiento, giro y mirada (los verbos nuevos)

LOCUTOR se gira                      # entre frente y perfil, por las vistas intermedias
LOCUTOR se da la vuelta              # a la espalda (o de vuelta al frente)
LOCUTOR se vuelve hacia la cámara    # · se pone de frente · se pone de perfil · se vuelve de espaldas
LOCUTOR de espaldas                  # (ya existía) ahora gira, no salta
VECINO se sienta · se levanta · se inclina · se yergue
VECINO se asoma a la barandilla      # · se apoya en la barandilla
VECINO asiente · niega · se encoge de hombros · se rasca la cabeza
VECINO se acerca                     # camina hacia cámara y crece sobre sus pies
VECINO se aleja                      # se da la vuelta, se va y mengua
VECINO mira a «radio»                # cabeza y ojos hacia otra pieza, hasta el beat siguiente
VECINO se queda quieto               # el freno del personaje: solo respira (`mesa vida` no lo cuenta)

Todos anclables (al decir «gol»: VECINO se asoma a la barandilla). Al girar, la cabeza se adelanta al cuerpo. X se ríe pone además la risa del cuerpo.

3.15.6 · Los objetos vivos

Toda pieza python: que no es personaje ni va a sangre vive (por las partes con nombre del bestiario): la radio (y la tele) vibra y late con lo que suena (mesa._oido, la radio entera); la aguja tiembla, más cuanto más suena; la ropa, la tela, el manto, la bufanda, el pelo, el cable y el tentáculo se mecen con el viento; las ondas, la luz y el ojo mágico laten; el vaho sube; cualquier otro objeto respira (escala de décimas sobre su base y un balanceo de décimas de grado). Las criaturas con ficha (almeja, calamar, pulpo) viven como marionetas con sus ciclos.

3.15.7 · La comprobación: mesa vida

${=MESA} toca p.mesa --motor gx … -o /tmp/x.mp4
${=MESA} vida /tmp/x.mp4            # (o el .gx.json) · --json medida.json

El render registra en <vídeo>.gx.json (clave vida) cada dibujo de cada personaje con ficha: instante, si está en cuadro, opacidad, vista, postura sin la boca y silueta en una rejilla de 24 × 32. mesa vida mide por personaje y por segundo la articulación que más se movió y la parte de la silueta que cambió de sitio, y marca PEGATINA (sale con 1) el segundo en cuadro con menos de 4° y menos del 4 % (el hervor solo mueve un 2 %). Los frenos (> congela la imagen, > se para en seco, > todo se para menos …) dejan un hueco en el registro y no cuentan; X se queda quieto tampoco.

MESA_GX_SIN_VIDA=1 rueda como antes de la vida (poses dibujadas de golpe, sin actor ni objetos vivos): para comparar. Medido en los locutores de RADIOINTERMISIÓN (r01_01 a r01_04): sin vida, 16 de 18 segundos pegatina; con vida, 0.

3.16 · La lengua que enseña: capas, errores que enseñan, explica, chuleta, nuevo

El objetivo es que cualquiera escriba bien un pliego sin mirar el código: una persona, o un modelo mucho más pequeño que el que diseñó la lengua. Medido en ERGONOMIA.md.

3.16.1 · Las capas y la capa de la casa

Un pliego se escribe por capas (lo que se dice → dirigir → poner cosas → el tiempo → la escena y el movimiento → el sonido → el aspecto y la materia), y cada capa es opcional. Para que la primera ya sea un vídeo digno, el compilador pone la capa de la casa (formato/capas.py): en las unidades (escena, o capítulo sin escenas) en las que ningún beat enseña nada propio, cada beat que habla lleva al papel su frase (la primera; si es muy larga, su arranque), con la pieza que elige el dramaturgo por sus rasgos: la pregunta a mano y en minio, el grito en nota de rescate, la cita en recorte de periódico, el año con su fechador, el resto a máquina. Si hay diálogo, también la réplica, anclada a su primera palabra.

No se pone en un respiro (página vacía a propósito), en un cartel, en una frase partida, ni cuando el aspecto de la unidad ya enseña (río tipográfico, cartel, pantalla partida, simultáneo, espejo) o hay escenario, mundo, fondos o DELANTE. página vacía en la línea de propiedades la apaga en todo el pliego. Se apunta en el parte de dirección («capa de la casa en b01: …») y cada acción lleva maquina: "capa de la casa".

3.16.2 · Los errores que enseñan

Cada error y aviso de mesa lee dice qué pasa, en qué línea, por qué y cómo arreglarlo, con «¿quisiste decir…?» (por parecido, por prefijo y por un diccionario de sinónimos: «frente» → «frontal», «rápido» → «de un tirón», «tiempo bala» → «tiempo bala sobre «X»») y, casi siempre, un ejemplo correcto:

  ✗ línea 31 · «cerrado» detrás de «·» no es un tamaño ni un corte: …
      por qué: detrás de «·» en una línea `python:` solo va el tamaño …
      arreglo: si «cerrado» es un argumento del dibujo, va pegado al nombre …
      ejemplo: python: congelador cerrado · enorme

Los mensajes de siempre pasan por un catálogo (ensena._catalogo) que les añade la línea (si hablaban de un clip por su id), el porqué, el arreglo y el ejemplo. Y se cazan los fallos silenciosos (lo que el parser aceptaba y el vídeo no hacía), que son error:

se escribíapasabamesa lee dice
pon: python: solsalía escrito en pantallano es una orden; arreglo python: sol
COLOR monocromo dentro de un clipsalía escrito en pantallaes una línea de ESCENA
NOMBRE: —… sin REPARTOsalía escrito en vez de oírsehabla pero no está en el REPARTO
X verbo con un verbo que no es de la lengua, y X una pieza o un personajesalía escritono es un verbo; ¿quisiste decir…?
palabra: … que no es una ordensalía escrito¿quisiste decir «X:»?
python: gamba · entera«·» y «entera» llegaban como argumentos (y el render se caía)no es un tamaño ni un corte
python: X a b c con más argumentos que la firma, o k= que no existefallaba al rodarla firma del dibujo, leída con ast
python: sin PYTHON en el preámbulono salía ningún dibujoel preámbulo no carga bestiario
* general simétrico · …«simétrico» se ignorabano es una palabra de plano

Y son aviso: el texto suelto que se escribirá a máquina («texto en pantalla»), el sujeto de un movimiento que no existe, la palabra de más en la cabecera de una escena (pasa a ser parte del título) y la página vacía (un beat que corta a un cuadro nuevo y no pone nada mientras se oye la voz). El aviso «clip vacío» ya no salta en un respiro.

El motor busca las piezas también sin tildes: «el árbitro camina…» mueve al dibujo arbitro.

3.16.3 · Las herramientas

mesa explica «palabra o línea»   # qué es, dónde va, qué entiende el parser, ejemplo
mesa chuleta                     # la lengua en una página
mesa bestiario p.mesa            # los dibujos que ve el pliego, con sus argumentos
mesa nuevo «Título» [--desde texto.md] [--carpeta dir]
  • explica explica una palabra (en qué vocabulario está y dónde va), una construcción (python, REPARTO, al decir…) o una línea entera: la mete en un pliego de una escena, la pasa por el parser de verdad y dice qué entendió (movimiento con sus partes, dibujo con sus argumentos, voz, evento…) o por qué se escribiría en pantalla. No puede divergir del parser. Con un .json del IR, hace lo de antes (lo devuelve como pliego).
  • chuleta sale de los vocabularios del motor (no hay una segunda lista), con las tildes repuestas (ensena.con_tildes) y los eventos por familias.
  • bestiario lee el bestiario con ast (sin ejecutarlo): las funciones que el pliego ve (las de los archivos de PYTHON y lo que importan), su firma y la primera línea de su documentación.
  • nuevo crea la carpeta con el pliego comentado por capas, un bestiario mínimo que funciona (estrella, flecha, a pulso) y audio/sfx, audio/banda, texto/. Con --desde, propone el pliego del texto por su tipografía, sin IA: # título, ## capítulo, un beat por párrafo (los de más de 35 palabras se parten por frases, o en tramos de unas treinta si no hay puntuación), la prosa al narrador (di:), la cursiva a CURSIVA, los párrafos en mayúsculas a MAYÚSCULAS, y las réplicas con raya o guion al que nombra la acotación (—… —dijo Marta. → MARTA) o, si no la hay, a VOZ_A y VOZ_B por turnos.

3.17 · El escenario 3D, Blender orquestado y lo generativo (rama tresde)

Un decorado de verdad, en volumen, con la luz del cine y la MISMA cámara física de §3.13; Blender como motor de fondo que renderiza por capas y Tórculo que las compone con la pluma, las láminas, la bobina y el papel; el 3D ligero de ManimGX para lo que no merece Blender; el intercambio con otros programas (glTF, USD) y el material de los modelos de imagen y de vídeo como cuarta fuente, siempre declarado y congelado. Vocabulario CERRADO (formato/tresde.py), sin una cifra: los números viven en tresde/escenario.py: OFICIO_3D y en el repertorio. Se rueda con --motor gx. Sin ESCENARIO 3D en el pliego, nada cambia.

3.17.1 · Las líneas de la escena

Van en la ESCENA (debajo de -- LUGAR --, antes del primer *): un escenario es un sitio. Dentro de un clip son error (se escribirían en pantalla); fuera de una escena, también.

UNIDAD    ::= "ESCENARIO 3D" {"·" escenario} | "DECORADO" decorado
            | "PERSONAJE 3D" NOMBRE {"·" personaje} | "LUZ" papel {"·" luz}
            | "HORA" hora | "NIEBLA" niebla
escenario ::= en Blender | en ManimGX | ligero            (el motor; por omisión, Blender)
            | con EEVEE | con Cycles                       (el render de Blender)
            | de papel | de cartón | en tinta | en acuarela | en risografía | modelado
            | líneas a pluma | líneas de Blender | sin líneas
            | en GPU alquilada | en el Mac
decorado  ::= [«NOMBRE»] (PIEZA | terreno TIPO | de RUTA.{glb,gltf,usd,usda,usdc,usdz,blend,fbx,obj})
              {"·" (DISTANCIA | LADO | TAMAÑO | RELACIÓN «X» | en fila | por todas partes | materia)}
PIEZA     ::= suelo pared muro caja cubo esfera cilindro cono columna escalera arco rampa
              casa torre tejado tejados azotea chimenea antena deposito barandilla
              ventana puerta farola banco arbol arboleda roca luna nube nubes
              tendedero silla mesa radio maniqui
TIPO      ::= llano | de colinas | de montañas | de dunas
DISTANCIA ::= delante | al pie | cerca | al paso | a media distancia | lejos
            | al fondo | en el horizonte | en el cielo          (las de §3.13.2)
LADO      ::= a la izquierda | a la derecha | al centro
TAMAÑO    ::= pequeño | grande | enorme | gigante
RELACIÓN  ::= sobre | junto a | detrás de | delante de | dentro de
personaje ::= maniquí | de RUTA | DISTANCIA | LADO | TAMAÑO
papel     ::= principal | de relleno | de contraluz | de recorte | práctica de «X»
luz       ::= DIRECCIÓN | cálida | fría | neutra | ámbar | de luna | de vela
            | dura | suave | tenue | fuerte
DIRECCIÓN ::= de la izquierda | de la derecha | de frente | de arriba | desde abajo
            | de lado | de detrás
hora      ::= alba | mañana | mediodía | tarde | atardecer | hora azul | noche | noche de luna
niebla    ::= ligera | densa | de suelo | no
  • El repertorio es de mallas propias (tresde/malla.py) en metros con la base en el suelo; el pliego nunca da un tamaño: pequeño … gigante multiplica el natural. Un modelo de fuera (DECORADO «torre» de modelos/torre.glb) entra con su tamaño, la base en el suelo y el centro donde lo pone la distancia; su cámara y sus luces se quedan fuera.
  • Dónde va cada cosa sale de las palabras: la distancia da la profundidad, el lado la saca hacia el borde de lo que se ve a esa distancia, la relación la apoya en otra (sobre «silla»), en fila la repite a lo ancho y por todas partes la siembra (con la semilla de su nombre). Con una azotea, lo de lejos (tejados, casas, torres) se levanta desde la calle, debajo: se ven sus tejados por encima del pretil.
  • La luz del cine. La HORA pone el sol (o la luna) y el cielo; si el pliego dice una LUZ principal, esa es la principal. El relleno y el contraluz salen de la principal (su fuerza y su lado); la práctica la da una pieza (LUZ práctica de «radio»): una luz en su dial o su lámpara. NIEBLA es niebla de papel: lo lejano se funde en el color del horizonte (de suelo: un volumen bajo).
  • El plano de la cabecera, en la cámara de verdad. * medio contrapicado tres cuartos de VECINO: la talla es un travelling hasta la distancia justa con la misma lente (el sujeto queda de ese tamaño), la altura inclina la mirada alrededor del sujeto (picado, contrapicado, cenital, nadir) y el frente la hace girar alrededor de él. La cámara nunca atraviesa el suelo. El sujeto puede ser un personaje o una pieza del decorado (que se mide con su propio tamaño).
  • Los eventos de §3.13 nombran piezas del decorado: > la cámara se acerca a «torre», > plano secuencia por «tendedero» y «radio», > vértigo sobre «X», > la cámara gira alrededor de «X». En un escenario, girar alrededor es dar la vuelta con el suelo abajo (guiñada sobre la vertical), no rodar sobre el eje de la mirada como en la página.

3.17.2 · Los personajes con ficha en el decorado (2,5D)

Una ficha (§3.10.13, §3.15) puesta en una escena 3D es una lámina plantada: los pies en el suelo del decorado y la altura de una persona; dónde (a lo ancho) lo sigue decidiendo el compositor, o el pliego con junto a «silla»: python: vecino. Lo que en el decorado está más cerca que ella la tapa (la capa de delante). Su vista sale de la cámara: cuando la cámara gira alrededor, el personaje pasa por las vistas de su ficha (el model sheet en acción); la vida (§3.15) sigue igual.

3.17.3 · Blender orquestado: las tres pasadas y las capas

mesa toca --motor gx con un escenario en Blender hace solo:

  1. Grabar la cámara: el pliego se rueda en pequeño (256 × 144, el mismo fps, sin sonido); el operador hace lo que hará en la tirada (es determinista) y se apunta su estado en cada fotograma (<vídeo>.camara3d.json).
  2. Blender (tresde/blender/puente.py, en segundo plano, nice 15, 4 hilos, dentro del turno de pesado) construye la escena desde el mundo y la pista y renderiza, fotograma a fotograma, un EXR multicapa del que salen: fondo (el decorado sobre su cielo, con la niebla), frente (lo que está más cerca que los personajes, con alfa), trazos (los contornos visibles como polilíneas: siluetas, aristas, bordes y las líneas de dibujo del repertorio, con la visibilidad contra la profundidad) y, a petición, lineas_blender (Freestyle), prof, mascaras, normales. Caché por contenido en ~/Library/Caches/manim-saorin/tresde/<hash>: si no cambian el decorado ni la cámara, no se vuelve a abrir Blender, y un fotograma hecho no se repite.
  3. Componer (gx/tresde.py): el fondo cuelga al fondo del todo, llenando el cuadro con la cámara de cada fotograma; encima, la pluma de Tórculo dibuja los contornos (m.Trazo, presión, puntas afiladas y hervor: tres poses a ocho dibujos por segundo con la semilla del canon); las láminas van en el mundo de ManimGX; lo de delante cuelga justo por delante del personaje más cercano, con sus contornos. Después, lo de siempre: la bobina, el papel, los carteles, el sonido.

Las materias de la casa en 3D (EEVEE) son NPR: de papel (tres tintas planas sacadas de la luz real, el grano del papel y un rayado de pluma en la sombra), de cartón, en tinta (el papel en blanco y solo el rayado), en acuarela (rampa blanda y el pigmento acumulado en el canto), en risografía (dos tambores y trama de puntos) y modelado (principled). En Cycles la materia es un difuso con grano; lo de la casa lo pone Tórculo.

3.17.4 · La misma cámara

tresde/camara.py traduce el estado de la cámara de ManimGX (centro, ancho, phi, theta, gamma, distancia focal, zoom) a un pinhole de mundo (ojo, ejes, campo vertical) y de ahí a Blender (matriz y focal con sensor de 24 mm de alto; mundo (x, y, z) ↦ (x, −z, y) · 0,4 m). Comprobado: un punto del mundo cae en el mismo píxel en ManimGX (±1 px) y las líneas extraídas de Blender caen sobre sus aristas. La lente, la masa, el temblor, el vértigo, la órbita y el plano secuencia son los de §3.13.

3.17.5 · El 3D ligero de ManimGX

ESCENARIO 3D · en ManimGX: el mismo mundo son mallas iluminadas dentro del render (sol, puntos y ambiente de la luz del cine, con sombras), el cielo cuelga al fondo y la pluma dibuja aristas, bordes y siluetas (recalculadas «en dos» con la cámara). Sin segunda pasada ni Blender: 10,9 s de vídeo en 3,4 s de render.

3.17.6 · El personaje 3D y la vida

PERSONAJE 3D NOMBRE · maniquí (o · de modelos/x.glb, pendiente de asignar sus huesos): una ficha invisible en la mesa recibe la vida entera (§3.15: respira, actúa la voz, grita con el cuerpo, celebra, señala); la primera pasada graba sus ángulos y su boca; tresde/esqueleto.py los hace articulaciones con la convención del muñeco de estudio; el puente mueve una armadura cuyos huesos se llaman como en la vida (pelvis tronco cabeza brazo_i antebrazo_i brazo_d antebrazo_d pierna_i espinilla_i pierna_d espinilla_d pie_i pie_d) y la boca con una clave de forma por visema (reposo a e i o u m f). Para que hable, NOMBRE va en el REPARTO.

3.17.7 · Lo generativo, declarado y congelado

imagen sintetizada ≈ «nubes de tormenta sobre los tejados, tinta y acuarela»
en el cielo: imagen sintetizada ≈ «…» · sin fondo
clip sintetizado ≈ «…»  ·  clip sintetizado de fondo ≈ «…»  ·  clip sintetizado mudo ≈ «…»

mesa sintetiza p.mesa [--proveedor simulado|local|treg] [--de-pago] [--descarga] [--refresca] [--creditos] genera cada petición UNA vez en _sintesis/ y la congela en <pliego>.lock (clave sintesis: tipo, consulta, proveedor, modelo, semilla, fecha, sha256, coste). Al compilar cada línea es un foto: o un clip: a su archivo: el render nunca llama a un modelo. Si falta alguna, mesa lee da error. Lo generado se declara en el comment del vídeo, en <vídeo>.creditos.txt y en el informe (generado). Proveedores: simulado (determinista, sin modelo), local (Stable Diffusion Turbo en el Mac, gratis; el clip local es la imagen con un empuje de cámara, declarado así) y treg (de pago: MiniMax image-01, Seedance 1 Lite; solo con --de-pago y escribiendo antes el precio).

3.17.8 · Intercambio y GPU alquilada

mesa tresde mundo p.mesa [--escena X]                 # el escenario, sin rodar
mesa tresde exporta p.mesa -o x.glb|.gltf|.usd|.usdc|.usda|.blend|.fbx [--pista v.camara3d.json]
mesa tresde remoto p.mesa [--simula]                  # el trabajo de Cycles para Vast/R2, o su ensayo

exporta saca el decorado, su luz y su cámara (animada fotograma a fotograma con la pista que grabó el render); lo exportado vuelve a entrar como DECORADO … de x.glb. · en GPU alquilada empaqueta el mismo trabajo del puente con los modelos (skill gpu-alquilada: sube una vez a R2, una máquina lo baja, rinde con OptiX, sube las capas y se destruye) y no alquila nada sin permiso: escribe el paquete y las órdenes y para; MESA_TRESDE_REMOTO=ensayo (o --simula) hace el trabajo entero en el Mac con un almacén en carpeta.

3.17.9 · Medido (15-10-2026, Mac M-series, carga del Mac ajena 5-25)

  • La azotea (27,5 s, -q ql, 412 fotogramas 854 × 480): grabar la cámara 60 s; Blender EEVEE 0,52 s/fotograma (225 s); componer 37 s. Con la caché llena, la tirada entera 55 s.
  • 3D ligero: 10,9 s de vídeo en 3,4 s.
  • Ensayo del trabajo remoto (Cycles, 1 fotograma 640 × 360, Metal): 141 s.

3.17.10 · Lo que no hace todavía

Los huesos de un personaje importado (de x.glb) aún no se asignan a la vida (solo el maniquí); la lámina no hace sombra en el suelo del decorado (solo la oclusión); el lanzador real de Vast no está atado (las órdenes sí); los contornos de un modelo importado se sacan de su malla de reposo (si se anima, no siguen); el ligero no tiene materias de la casa por pieza (lleva el baño y la pluma).

3.18 · Las tomas y los planos

Nació en «Radiointermisión» (v6, 15-10-2026): «los planos en el estadio son aburridos y estáticos cuando deberían ser frenéticos». Una toma de voz de diez segundos («arranca a correr su delanterogoleador… OH DIOS MÍO QUÉ REGATE») era un solo clip y, por tanto, un solo plano. Ahora la toma y el plano son dos cosas.

3.18.1 · La toma partida en planos

El mismo id de beat en clips seguidos es la misma toma de voz cortada en varios planos. Cada clip dice su tramo de la frase, tal cual, y entre todos la toma entera:

* r06_01 general nadir perfil de delantero · euforico
BLANQUIAZUL: —arranca a correr su delanterogoleador
DELANTERO esprinta
* r06_01 detalle de balon · euforico
BLANQUIAZUL: —con el esférico entre los pies
> la cámara va pegada a «balon»
  • El compilador los llama r06_01, r06_01_p2, r06_01_p3… (toma_de, toma_parte).
  • La voz suena una vez, entera, desde el primer plano. Cada plano empieza cuando la voz dice su primera palabra y acaba cuando dice la primera del siguiente: sin pausa entre ellos (es la misma frase); el último lleva la pausa de la toma.
  • al decir «X» busca en el tramo de su plano.
  • El plano no se pasa de su toma: si el anterior se pasó, el siguiente empieza tarde y acaba a su hora; ningún gesto de un plano se come el tiempo del siguiente (se aprieta).
  • Un plano que declara su talla (o es un cartel) es un cuadro nuevo de verdad: en el corte se va todo lo del plano anterior, también los personajes y las capas, y el corte es seco.
  • mesa lee avisa («toma partida») si los planos no dicen, entre todos, las palabras de la toma.

3.18.2 · Dos tomas en una frase

* r15_01+r15_02 … junta dos tomas seguidas del sidecar en un solo beat: sus palabras van una detrás de otra (con la pausa de la primera entre ellas) y las dos tomas suenan encadenadas. Es lo que pide la frase partida, que empieza en la voz de uno y la termina el otro:

* r15_01+r15_02 contrapicado de vecino_blanquiazul · sereno
VECINO_BL / BLANQUIAZUL: —Podría haber sido un / partido decepcionante tras unos primeros minutos históricos
al decir «partido»: vecino_blanquiazul hierve con locutor_blanquiazul

mesa lee da error si alguna de las tomas no está en el sidecar. Las dos cosas se combinan: el mismo a+b en clips seguidos parte en planos las dos tomas juntas.

3.18.3 · Dónde vive

formato/tomas.py reescribe los tiempos (beats) y las tomas (wavs) del sidecar ya cargado, en memoria y sin tocar el disco; el resto del motor ve beats normales. Lo usan mesa toca (CE) y gx/correr.py; el corte y el tope de cada plano, gx/escena.py.

Arreglos que salieron por el camino: la escena se identifica con su capítulo (la escena 1 de un capítulo y la 1 del siguiente se tomaban por la misma y la segunda no levantaba la mesa); las partes con nombre de un personaje con ficha (el pelo pasa de nina_rubia a delantero) se buscan dentro de su contenedor; la frase partida empieza en un letrero de cartulina, no en la nota de rescate (dirigir-saorin §26); y la gramática se lee sin Manim (para sentido).

3.19 · Los géneros y la producción (rama generos)

Que del mismo pliego salga cualquier vídeo: un TikTok, una clase, una noticia con sus fuentes, un corto o su tráiler. El género es un perfil de la lengua: una línea que trae todos los valores por defecto. Los números viven en la tabla del perfil (manim_saorin/generos/perfiles.py), que es calibración de un oficio, como el taller; el pliego no escribe ninguno.

3.19.1 · El preámbulo

LÍNEA-PREÁMBULO += "GÉNERO" GÉNERO { "·" CAMPO-GÉNERO }
                 | "LIENZO" ( "16:9" | "9:16" | "1:1" | "4:5" | "vertical" | "cuadrado" | "retrato" )
                 | "IDIOMA" LENGUA
                 | "DATOS" RUTA ;
GÉNERO       = "tiktok" | "reel" | "short" | "didáctico" | "noticia" | "documental"
             | "ensayo" | "corto" | "videoclip" | "podcast" | "anuncio" | "clase"
             | "presentación" | "tráiler" | "videopoema" | "efeméride" | "tutorial" ;
CAMPO-GÉNERO = ( "de" | "marca" | "canal" ) CITA | "sin bucle" | "con bucle"
             | "sin subtítulos" | "para la tele" | "para el cine" ;
LENGUA       = "es" | "en" | "fr" | "pt" | "it" | "de" | "ca" | "ko" | nombre en castellano ;
  • Precedencia: perfil < preámbulo < capítulo < escena < clip. El perfil solo rellena lo que el pliego no dice (subtitulos banda en el preámbulo gana a los subtítulos del género).
  • Lo que trae cada perfil (mesa géneros lo imprime): lienzo nativo, ventana FORMATO si la pide (corto y tráiler, 2,39:1), duración mínima, objetivo y máxima, duración media de plano, segundos del gancho, estilo de subtítulos, sonoridad del máster (LUFS integrados y pico verdadero), pausa al final de cada beat, silencio final, cada cuánto un respiro, si da la vuelta (bucle), zonas seguras de la interfaz, plantilla de títulos, estructura esperada y reglas duras (fuente en noticia y efeméride, llamada en anuncio, musica en videoclip).
  • LIENZO es la proporción del fichero (1080×1920 en vertical), no la ventana de FORMATO. En un lienzo que no es 16:9, la hoja mide 8 de alto y lo que se lee sale, en proporción, del tamaño de un teléfono; la página es una columna (una pieza al centro; dos, la primera arriba y la segunda en medio) y lo que se lee no cae bajo la interfaz de la app. En 16:9 las cotas son exactamente las de siempre (regresión: mismos fotogramas que master).
  • IDIOMA dice la lengua de lo que se dice y se lee: la voz (Supertonic con --lang), la alineación y la ortografía.
  • DATOS declara la fuente de una serie (§3.19.4).

3.19.2 · Las líneas de clip de los géneros

LÍNEA-CLIP += "ecuación:" ( LATEX | "$" TYPST "$" )
            | "rótulo:" NOMBRE [ "·" CARGO ]
            | "titular:" TEXTO
            | "fuente:" RUTA-SPDF [ CITA ] [ "·" "p." FOLIO ] [ "·" "en español" CITA ]
            | "dato:" ( CITA | PALABRA ) [ TEXTO ] [ "·" "según" RUTA-SPDF CITA ]
            | "cita:" CITA [ "·" ( QUIEN | "según" RUTA-SPDF ) ] [ "·" "en español" CITA ]
            | "llamada:" TEXTO [ "·" ENLACE ]
            | "paso:" TEXTO
            | "audiograma" [ "de" HABLANTE ]
            | "firma" [ ":" CLAIM ] ;
  • ecuación: se escribe con tinta y se lee desde el fondo del aula; si ya hay una ecuación viva (en el mismo beat o en el siguiente), la anterior se transforma en la nueva: la derivación paso a paso.
  • fuente: comprueba la cita letra a letra en el SPDF (el formato de la casa, ~/Developer/spdf) y enseña la cita subrayada, su traducción, la referencia ((NIST, 2025, p. 14)) y el ancla (spdf:sha256-…#p=25&f=14&char=1692,1754). Si la frase no está en la fuente, o no está en la página dicha, mesa lee da error: una cartela no puede citar lo que la fuente no dice. mesa fuente nueva informe.pdf hace el SPDF de un PDF con capa de texto.
  • En noticia y efeméride, cada cifra en pantalla lleva su ancla: una línea que enseña un número (ver:, dato:, pon:, letrero, titular:, rótulo:) en un clip sin fuente: ni · según es aviso.
  • Una cifra de contenido no es dirección: lo que va entre «», los datos de un ver:, las ecuaciones y los datos no cuentan contra el porcentaje pobre.
  • firma cierra un anuncio con el canon de marca.toml (junto al pliego: nombre, claim, legal, logo, acento, texto, letra), que también viste la llamada:.
  • Las piezas de género llevan su propio papel (la letra no se ancla) y pasan por el compositor; en apaisado con género, dos piezas del mismo beat van en fila, y si el beat anterior dejó un gráfico grande, se aparta a la izquierda para que el dato entre a su derecha.

3.19.3 · Gráficos desde datos

ver: curva desde datos/capital.csv      # una línea por columna; la 1.ª es la x
ver: barras desde datos/votos.csv       # una barra por fila
ver: puntos desde datos/medidas.json    # CSV, JSON (lista de objetos)

Ejes a pulso, marcas redondas (1, 2, 5 × 10ⁿ), números con la ortografía de la RAE (coma decimal; espacio fino desde 10 000), cada serie con su nombre a mano al final de su línea y en su tinta. Las rutas, relativas al pliego.

3.19.4 · Plantillas, series y variantes

MESA «{lugar} en folios»
DATOS datos/cimas.csv
variante A: di: ¿Cuántas veces hay que doblar un folio para llegar a {lugar}?
variante B: di: {dobleces_letra|inicial} dobleces: eso mide {lugar} en papel.
si {record}: pon: sello «RÉCORD»
  • {campo} es una columna de la fila; |mayúsculas, |minúsculas, |inicial, |miles le dan forma. si {campo}: incluye la línea si el campo dice algo; variante X: la pone solo en la variante X.
  • Una plantilla se rueda tal cual (primera fila, primera variante; o las de MESA_FILA y MESA_VARIANTE). mesa serie y mesa variantes escriben un pliego por fila o por variante junto al original (sus rutas siguen valiendo) y, con --rueda, los vídeos y su hoja de contactos.

3.19.5 · La localización

mesa traduce p.mesa en escribe la hoja p.en.lengua.json, un segmento por texto que se ve o se oye, identificado por el hash del original; mesa localiza p.mesa en materializa p.en.mesa (con IDIOMA en) y su sidecar. La imagen conserva los tiempos del original: cada beat dura lo que duraba y las anclas al decir caen en el mismo instante (el sidecar traducido guarda las palabras del original en palabras); la voz traducida cabe en su hueco (hasta un 18 % más rápida sin cambiar el tono; si no, el beat crece y se avisa) y los subtítulos la siguen (palabras_voz). No se traducen anclas, nombres de pieza, rutas ni citas literales de una fuente. Una hoja hacia el español pasa la regla de las tildes o no se materializa.

3.19.6 · Accesibilidad, revisión y derivados

ordenqué deja
mesa subtitulos v.mp4 [--incrusta].srt, .vtt (dos líneas de 42, 0,83–7 s, cortes en la puntuación); la pista dentro del mp4
mesa audiodescribe p.mesa v.mp4.ad.vtt (descripciones), .ad.txt y .ad.mp4 con segunda pista de audiodescripción
mesa accesible v.mp4contraste WCAG de cada tinta sobre su papel, destellos, velocidad de lectura, letra mínima (Vision), texto bajo la interfaz
mesa revisa v.mp4la mesa de revisión en el navegador: notas en el instante, con un trazo sobre el fotograma
mesa notas p.mesa [--aplica|--hecha nN|--correo X|--importa f|--hilo id]las notas ancladas a su beat, como // NOTA nN [pendiente] m:ss,d · autor: … bajo su cabecera
mesa trailer p.mesap.trailer.mesa y su sidecar con las tomas del original
mesa deriva v.mp4 --hilo|--web|--verticalel hilo con texto alternativo, la página web interactiva, el corte 9:16
mesa canal canal.toml [--rueda]la carpeta del día con todo lo anterior y un diario
mesa nuevo «T» --género Xel proyecto con la plantilla del género (// ✎ en cada hueco)

La audiodescripción sale del pliego, que sabe qué se ve: cada pieza tiene su frase (las ecuaciones se leen; las cartelas dicen su fuente y su página; los gráficos, sus series), y los dibujos del bestiario la declaran en DESCRIBE = {"torre": "… junto a {junto}"} (con DESCRIBE_VALORES para que los argumentos se lean en castellano).

3.19.7 · Lo que hace el motor solo

  • El acabado del género: el máster se lleva a su sonoridad en dos pasadas (lineal y, si el pico no deja, dinámica) y, en redes, el último fotograma funde con el primero.
  • En los géneros de corte rápido (plano ≤ 3 s: redes, anuncio, noticia, tráiler) lo del beat anterior se va al cortar: cada beat, un plano limpio.
  • La ortografía: mesa lee revisa con el corrector de español del sistema (local) lo que se ve y se oye, más las reglas de la casa (vídeo, píxel; plurales en -ciones sin tilde; ¿ y ¡ de apertura; la raya pegada al inciso).
  • El reloj de cada palabra: sin whisper.cpp, mesa graba alinea con mlx-whisper local (large-v3-turbo).

3.19.8 · Pendiente

  • 3D matemático (ver: superficie «…») y mapas: esperan a la rama tresde.
  • Videoclip y karaoke sobre --motor gx: el régimen de canción aún delega.
  • Una ventana FORMATO 16:9 dentro de un lienzo vertical (hoy, en un lienzo nativo, el formato neutro es el lienzo).
  • La versión web con tomas de ManimGX (<manimgx-film>) en vez del mp4.

3.20 · La acción física y la jugada (el fútbol que se mueve)

Rama futbol (15-10-2026), encargo de «Radiointermisión»: «ninguno corre, nunca se ve un gol, una parada, chutar». La acción física es del personaje (sus ACCIONES) y de la física del motor (gx/jugada.py); el pliego la pide con palabras.

3.20.1 · El cuerpo entero en el esqueleto

Cuatro claves más de la pose (estudio/muneco.py, POSE_BASE), que el motor interpola como las demás:

clavequé
ruedael cuerpo entero gira alrededor de X por la pelvis (+ de bruces, − de espaldas: la chilena, la entrada)
vuelcogira alrededor de Z (+ hacia su derecha: la estirada del portero)
apoyo0..1: lo más bajo del cuerpo toca el suelo (pie, rodilla, cadera, pecho, cabeza)
pisa+1 apoya solo el pie derecho, −1 solo el izquierdo (el otro golpea)
elevalo que se levanta del suelo después de apoyarse (el vuelo de la zancada, el salto)

Los cantos del tronco y de la cabeza se calculan perpendiculares a su eje en la hoja: un cuerpo tumbado no pierde el volumen.

3.20.2 · Las acciones (librería estudio/futbol.py)

Toda ficha que publique las ACCIONES de la librería las sabe hacer. Su forma, además de la lista de poses de siempre, puede ser un diccionario:

dict(poses=[("chuta_anticipa", 0.34), ("chuta", 0.1), ("chuta_sigue", 0.22)],
     vuelve="reposo",          # None: se queda donde acaba (en el suelo)
     contacto="chuta",         # CONTACTOS: (pose, fracción, parte que golpea)
     recorre=1.3,              # avanza resbalando, en alturas de la figura
     ciclo="esprinta", dura=2.4,   # un ciclo en el sitio
     balon="estira")           # el portero responde al balón
líneaqué
X corre hasta «Y»ciclo corre (contacto, recogida, paso, impulso; ocho dibujos); la fase la marca lo que avanza la pieza: los pies no patinan. Sin manera, de un tirón
X esprintaciclo esprinta en el sitio hasta el beat siguiente; publica la velocidad de su zancada para el césped en fuga
X regateaamago, corte y salida
X chuta · X chuta a «Y»anticipación, contacto (una décima) y seguimiento; el balón sale en el contacto hacia Y
X pasa a «Y»pase raso con el interior, a los pies de Y
X remata de cabeza [a «Y»] · X hace la chilena [a «Y»] · X despeja a «Y»ídem
X hace una entrada · X se desplomaal suelo, resbalando
X celebra de rodillas · X abre los brazos · X se besa el escudo · X se incorporala celebración
X se estira · X para · X no llega · X se le escapael portero, cronometrado con el balón

X verbo a «Y» con los cinco verbos de la jugada es una línea de ficha (aspecto.JUGADA_A), no un movimiento. mesa lee exige que la acción esté en las ACCIONES de la pieza.

Lo rápido se ve rápido. Si la ficha acepta estela, el motor le pasa, en los fotogramas en que el cuerpo se ha movido mucho, las dos poses de antes y una velocidad: la hoja dibuja la multiexposición de los miembros que se mueven (del cuerpo entero si vuela o cae) y las líneas de fuerza.

3.20.3 · La jugada (gx/jugada.py)

  • El balón es cualquier pieza balon, pelota o esferico. Al primer toque toma la escala del jugador más cercano (una décima larga de su altura). Lo conduce quien corre a su lado (un toque por zancada); sale en el fotograma del contacto; gira con lo que corre, se estira con la velocidad, se aplasta en cada golpe y bote, y deja su estela cronofotográfica. el balón vuela | rueda | va hasta «Y», el balón cae, el balón rebota usan esa física, no el arrastre de los verbos.
  • El portero que se estira, para, no llega o se le escapa espera al balón: la estirada empieza para que el vuelo llegue cuando llega el balón, el cuerpo se desplaza hacia él (en espejo si va al otro lado) y las manos lo encuentran, se quedan cortas o lo rechazan.
  • La portería (porteria, red): la red se hincha donde entra el balón (un muelle amortiguado sobre sus puntos) y el poste vibra.
  • El césped en fuga (cesped_en_fuga, · a sangre): franjas y líneas de cal al punto de fuga, hierba en tres capas de paralaje; corre bajo quien corre en el sitio, a la velocidad de su zancada.
  • La grada (grada…) estalla en ola con > la grada estalla.

Eventos: > el balón entra en «X», > la red se hincha, > el balón da en el poste, > el balón bota, > la grada estalla. Cada fotograma se escribe desde los puntos guardados: nada deriva.

3.20.4 · Lo esencial de quien juega

Las fichas de jugadores declaran objeto = el pie que golpea: a tamaño gigante, el corte por el borde no se lleva ni la cabeza ni los pies.