caminata-voxel: una persona, una caminata continua, cada rol
Dónde vive el kit: ejecuta cada comando de esta habilidad desde la carpeta
reels-maker(el clon de github.com/thativanng/reels-maker que contienetemplate/ytools/). Si el proyecto no los tiene, configúralo primero siguiendo el SETUP.md de ese repositorio.
Comienza desde template/film.html + template/career.json. La plantilla es una película completa de tres capítulos (una cafetería, un almacén, un escritorio nocturno con un amigo IA) para una persona ficticia. Reemplaza los capítulos con los de la persona real; mantén los sistemas.
1 · Entrevista primero (reel-intake, luego references/intake.md)
reel-intake ejecuta la entrevista: propósito, formato, el bloque del viaje (cada rol y sombrero, nombre/describe/oculta, afirmaciones), las referencias de look y las barreras de protección. El references/intake.md de esta habilidad agrega solo lo que necesita el estilo voxel. La plantilla es solo 4:5 (sus cámaras están ajustadas para eso): para un resumen 9:16, reajusta las cámaras y vuelve a ejecutar cada compuerta, o elige otro look. Antes de colocar un solo bloque, obtén de la persona, en sus palabras:
- Cada rol: el año, empresa, título, y la única cosa que ese rol enseñó o demostró (el "foso").
- La escena que muestra el trabajo, no el título del puesto. Un planificador no es una persona en un escritorio; son camiones saliendo de un muelle hacia los depósitos correctos. Un barista son tazas entregadas sobre un mostrador.
- El atuendo para cada capítulo, lo que realmente usaban.
- Lo que NO debe aparecer: números que no pueden publicar, un empleador que prefieren no nombrar, afirmaciones que sus colegas actuales cuestionarían.
- La tarjeta final: nombre, eslogan, tres fortalezas, una línea de cierre.
Sus palabras tienen prioridad sobre las tuyas. Puedes corregir sus líneas (gramática, fluidez); no puedes reescribir su significado.
2 · Las reglas de la casa (references/house-rules.md tiene las razones)
- Una caminata continua. El héroe nunca desaparece. Camina de escena en escena; el atuendo cambia a medio camino con un anillo de luz que barre de cabeza a pies.
- Las escenas emergen y se hunden. El siguiente capítulo se eleva desde el suelo frente al héroe y el último se hunde detrás, por lo que una caminata entre capítulos toma de 2 a 4 segundos, no 20. Las cosas que se mueven se elevan después de los edificios y se van antes que ellos.
- La imagen cuenta la historia; el subtítulo lleva el significado. Sin etiquetas en los objetos (una carretilla elevadora no necesita una etiqueta "CARRETILLA ELEVADORA"). Etiqueta solo un concepto que la imagen no pueda expresar. Los subtítulos son una línea de historia por tiempo, nunca una repetición de la banda.
- El tiempo en pantalla sigue la importancia, no la escala real. Los momentos del héroe tienen pausas; los vehículos son actores secundarios rápidos.
- Color: suelo gris cálido, objetos blancos, techos y carreteras oscuros, UN color de acento para la interfaz de usuario y los accesorios clave. Luz clave fuerte más oclusión ambiental. Blanco sobre blanco es aburrido.
- La banda cambia cuando la escena está en pantalla, no cuando comienza su código.
- Sin número que no puedas defender frente a tu empleador actual. Los años en la banda están bien; los KPI generalmente no.
- Cada fotograma pasa film-audit.
3 · Cómo está construida la plantilla (encuentra estas secciones en film.html)
- CHARACTERS: un personaje es una lista de rectángulos
[x, y, w, h, color, parte, frontOffset, profundidad], extruidos a cajas y agrupados en partes (piernas, torso, brazos, cabeza, cabello) con pivotes.career.json → looksda un atuendo por capítulo.makeMini()crea el elenco;buddyVox()crea el robot. - La transición de atuendo: cada atuendo es un cuerpo voxel separado recortado por un plano en movimiento;
WIPES = [[t, desde, hacia]]. - WALK:
IK = [[t, x, z, ryCuandoSeDetiene]]waypoints, velocidad trapezoidal, fase de pierna desde la distancia.SITS = [[desde, hacia]]para escritorios. - ZONES:
zoneG(tIn, tOut)hace un capítulo que emerge y se hunde; cualquier cosa que se mueva va enwrap(zone). - CAMERA:
CK = [[t, A(...) | F(...)]]. - OVERLAYS: todo el texto proviene de
career.json. - AUDIT:
AUD_S(sólidos),AUD_M(movedizos),HELD(contactos que deben ocurrir),window._dbg(lo que las sondas pueden medir).
4 · Agregar un capítulo
- Elige un tramo de calle (rango x) junto al último capítulo. El carril de caminata es z ≈ 2.6–3.4, los accesorios se colocan detrás (z < 0), un escritorio se sienta al frente (z ≈ 5.4) con su silla detrás.
- Construye el escenario en un
zoneG(tIn, tOut); coloca los movedizos enwrap(zone). - Agrega waypoints IK para la entrada caminando y la parada, una entrada
WIPESpara el atuendo, y clavesCK(seguir mientras camina, una pausa absoluta en el ritmo). - Agrega la era a
career.jsonen el momento en que el escenario está listo y el atuendo está puesto. Agrega los subtítulos. - Registra cada sólido en
AUD_Sy cada movedizo enAUD_M. Agrega las señales de audio entemplate/audio.py. - Ejecuta las compuertas (hoja de imágenes fijas →
node tools/collide.mjs→ sondas), luego un auditor independiente.
5 · Trampas comunes en este estilo
- Un accesorio detrás de la cabeza (estantes, pantallas, tapas en una línea de producción) se lee como un sombrero o un halo. Sondéalo. Ajústalo con la altura de la cámara, un paso lateral, o un movimiento posterior.
- Pares de personas parados uno detrás del otro se fusionan en una figura de dos cabezas. Sepáralos un ancho de cuerpo en x.
- Cosas entregadas entre personas deben permanecer a la altura del pecho y nunca cruzar una cara. Enrútalas a través del escritorio del héroe si cruzaran la habitación.
- El héroe caminando de lado barre sus hombros sobre cosas al lado del carril. Mantén 1.3 unidades de espacio libre.