Capítulo 10 — Modo principiante
El Modo principiante (en alemán Einsteiger-Modus, Cmd+1) es el flujo guiado para todo el que reconstruye una escena de Gaussian Splatting 3D por primera vez. En lugar de mostrar una barra lateral llena de campos del Inspector, la app te guía por cuatro pasos: primero importar imágenes o un vídeo y elegir un ajuste preestablecido de calidad, después corre el procesado (SfM + Entrenamiento), a continuación la escena terminada se puede inspeccionar en una previsualización 3D, y finalmente se exporta al formato deseado. Una barra de progreso estrecha en el borde superior de la ventana siempre te muestra en qué paso estás.
Comparado con el Modo Experto (Cmd+2), que muestra todos los paneles de control a la vez, el Modo principiante oculta las opciones no usadas, da avisos de validación con pocas o malas imágenes y, en cada paso, solo ofrece los botones que tienen sentido en el estado actual. Puedes cambiar entre Modo principiante y Modo Experto en cualquier momento (Cmd+1 / Cmd+2); todo el estado — imágenes importadas, ajuste preestablecido elegido, entrenamiento en curso, nube de puntos terminada — se conserva y está disponible al instante en el otro modo.
Z1 — Importar (elegir imágenes y ajuste preestablecido)

La ruta de migas (Import activo) muestra el flujo de cuatro pasos. Zona de drop a la izquierda con tres CTAs: "Browse Files" (NSOpenPanel), "Try Sample Scene" (demo empaquetada), "Download Sample Photos (~427 MB)" (subconjunto de flores Mip-NeRF360). Las insignias de formato debajo listan todos los tipos de archivo aceptados. A la derecha "Imported Files" con contador "0 images" y estado vacío "No files imported yet". Abajo, selector de Quality (predeterminado: Preview) y "Start Processing" (deshabilitado mientras no haya imágenes).
El primer paso consiste en darle material de imagen a la app. Mediante arrastrar y soltar al gran campo discontinuo del medio, mediante el botón "Browse Files" o haciendo clic en la escena de muestra empaquetada. A la derecha aparece una lista de todas las imágenes importadas con resolución y tamaño de archivo; debajo, en la barra de herramientas flotante, eliges el ajuste preestablecido de calidad y arrancas la pipeline con "Start Processing". Los avisos de validación (rojos con < 3 o < 10 imágenes, naranjas con 10–19) indican si la app espera una reconstrucción razonable o no.
C-01ProgressIndicator (indicador de paso)
DÓNDE
Arriba sobre el flujo, siempre visible.
TÉCNICO
Muestra una barra de progreso horizontal a lo largo de toda la pipeline (Frame Quality → SfM → Training) con asignación de etapas: Frame Quality ocupa 0–5 % (Fase 3.11, muy corta), SfM ocupa 0–30 % de la barra, Training 30–100 %. Junto a ella, texto de estado y visualización en porcentaje nombrada por fase ("SfM 41 %", "Training 12 500/20 000"), para que los usuarios no lean la aparente regresión "41 % SfM → 25 % Training" como un error — la barra muestra el progreso global de la pipeline, no el de la subetapa. El cálculo de ETA arranca en cuanto se mide suficiente velocidad de entrenamiento (típicamente tras las primeras 100 iteraciones). La misma visualización también se usa en el Modo Experto encima del Inspector.
C-03DropZoneView (área de arrastrar y soltar)
DÓNDE
Lado izquierdo del paso Import, gran rectángulo discontinuo con símbolo. Se muestra en Modo principiante con la etiqueta "Drop photos or a video here".
TÉCNICO
Área de drop que rebota brevemente el símbolo y tiñe el fondo en cuanto los elementos arrastrados pasan sobre el campo. Acepta JPG, PNG, TIFF, HEIC, MP4, MOV, PLY, SPZ, .splat, paquetes .radiancescene y directorios. Enrutado de drop por tipo: las imágenes se recopilan y se pasan ordenadas, los vídeos disparan la vía de frame-sampling, los archivos splat abren la previsualización directamente, los paquetes de escena se leen. Los directorios se enumeran y se importan todas las imágenes contenidas. Los bookmarks security-scoped para acceso compatible con sandbox se adquieren y liberan correctamente. Las extensiones no soportadas se muestran como banner de aviso durante 5 segundos.
C-05Botón Browse Files
DÓNDE
Dentro de la zona de drop, botón prominente.
TÉCNICO
Botón que abre el diálogo de archivo de macOS con selección múltiple y los tipos de archivo JPG, PNG, TIFF, MP4, MOV, carpetas, así como el formato de escena propio de la app. Las URLs resultantes son security-scoped y se enrutan por las mismas vías de importación que arrastrar y soltar. Cuando el usuario selecciona una carpeta, se enumera recursivamente para imágenes.
C-06Botón Try Sample Scene
DÓNDE
Dentro de la zona de drop, solo visible cuando el bundle de la app contiene la escena de muestra y aún no se han importado imágenes/splats.
TÉCNICO
Solo aparece cuando (a) un sample-scene.splat, .spz o .ply está presente en el bundle de la app Y (b) no se han importado imágenes/vídeos y no hay nube de puntos. Al hacer clic, carga la nube de puntos terminada (prefiriendo el formato más pequeño — .splat ~3 MB, .spz ~1,4 MB, fallback .ply) y, tras 400 ms, fija valores de cámara codificados en duro a partir de los metadatos originales de la escena de flores para una perspectiva de entrada estéticamente agradable.
C-07Botón Download Sample Photos
DÓNDE
Dentro de la zona de drop, junto a "Try Sample Scene"; mismas condiciones de visibilidad.
TÉCNICO
Dispara una descarga (repo github.com/bkindler/radiancekit-sample-photos) que carga aprox. 427 MB de 960 fotogramas a resolución completa y los mete en la app. Durante la descarga, el botón se deshabilita. El progreso aparece en la barra de progreso superior como "Downloading X %" en su propia etapa, porque esa etapa mantiene su propia escala 0–100 % y no se solapa con la posterior etapa SfM.
C-09Selector Quality Presets
DÓNDE
Barra de herramientas flotante inferior del overlay de importación, a la izquierda del botón Start.
TÉCNICO
Control con etiqueta "Quality" agrupa los ajustes preestablecidos disponibles por categoría (Classic / MCMC / Custom). Los ajustes integrados se agrupan por categoría; las cabeceras de sección están codificadas en duro. Los ajustes custom solo visibles cuando existe alguno. Estado bloqueado: los ajustes que no están en la lista gratuita (Quick + Preview) reciben un sufijo "🔒" junto al nombre cuando el usuario no ha comprado; al seleccionar, el selector vuelve a Preview y abre automáticamente el sheet de compra. Al seleccionar, el ajuste se aplica, lo que reemplaza toda la configuración de entrenamiento.
C-10Botón Start Processing
DÓNDE
Barra de herramientas flotante inferior del overlay de importación, a la derecha del selector de ajustes.
TÉCNICO
Botón que se mantiene atenuado mientras no se hayan importado imágenes ni un vídeo. Al hacer clic, arranca la pipeline y cambia la máquina de etapas en el orden Frame Quality → SfM → Training. El propio botón no tiene más estado; un procesado en curso aparece en su lugar como pantalla de procesado separada.
C-11Deslizador de muestreo de vídeo
DÓNDE
Lista de imágenes a la derecha, visible solo cuando se ha importado un vídeo (en lugar de imágenes).
TÉCNICO
Deslizador 0,5 fps – 30 fps en pasos de 0,5. Al cambiar, la densidad de fotogramas se actualiza y, además, se calcula el número de fotogramas objetivo (al menos 10) a partir de densidad y duración del vídeo. El deslizador queda fuera de la lista de imágenes, porque los ítems de lista bloquearían eventos de ratón de los deslizadores. Bajo el deslizador se muestran los fotogramas objetivo calculados ("247 frames") y la duración del vídeo ("1m23s video"). El tooltip avisa: "Doubling the density doubles the number of frames and increases SfM time by ~100%."
C-12Botón Clear All
DÓNDE
Lista de imágenes a la derecha, abajo a la derecha; visible solo cuando se han importado imágenes.
TÉCNICO
Botón rojo. El clic abre un diálogo de confirmación con título "Clear all imported files?" y mensaje "N images will be removed.". La confirmación borra todas las imágenes/vídeos importados, los directorios de staging, la nube de puntos, el estado de entrenamiento, el resultado de SfM y todos los cachés; la etapa salta de vuelta a Import. En Cancel, todo se conserva. El diálogo se configura como vía predeterminada no destructiva (botón destructivo marcado en rojo).
C-13Lista de archivos ForEach (eliminación individual de imagen)
DÓNDE
Lista de imágenes a la derecha, cada entrada.
TÉCNICO
Lista sobre las imágenes importadas con swipe-to-delete. Por imagen una fila con icono, nombre de archivo, resolución ("1920 × 1080") y tamaño de archivo (formateado KB/MB). La resolución viene de una caché de metadatos rellenada de forma asíncrona desde las cabeceras de imagen, para que la UI no bloquee. La acción de borrado ofrece el borrado por swipe típico de macOS (swipe a la izquierda en una fila con trackpad), así como borrado por teclado para la fila seleccionada. Nota: la vía extendida de borrado de imagen con botón menos explícito, backspace y Cmd-Z para deshacer se añadió solo en Modo Experto en el Project Navigator — en Modo principiante se queda con el borrado por swipe.
C-15Avisos de validación (3 niveles)
DÓNDE
Bajo la lista de imágenes, sobre el botón Clear All.
TÉCNICO
Tres umbrales sucesivos basados en el número de imágenes importadas (solo activos cuando hay imágenes y no vídeo): - < 3 imágenes: banner rojo (octógono rojo), texto "At least 3 images are required. Camera alignment cannot be computed from fewer images." - 3–9 imágenes: banner rojo, texto "With fewer than 10 images, SfM often fails and the trained scene tends to overfit […]. 15–20 images minimum recommended; 30+ for object captures." - 10–19 imágenes: banner naranja (triángulo de aviso), texto "Workable, but quality usually improves with 20+ images and good coverage around the scene."
A partir de 20 imágenes el banner desaparece. Los umbrales están codificados en duro y se basan en más de 560 experimentos de entrenamiento empíricos.
C-16Detección de workspace COLMAP
DÓNDE
Al soltar una carpeta — no un botón visible, sino lógica de detección.
TÉCNICO
Al soltar un directorio se comprueba si contiene uno de los tres layouts canónicos de workspace: sparse/0/cameras.bin, sparse/cameras.bin o directamente cameras.bin en la raíz. Si es así, la enumeración estándar de imágenes se aborta y en su lugar se abre un alert modal preguntando al usuario si se debe usar la reconstrucción existente o si las imágenes deben pasarse de nuevo por Apple Photogrammetry. Misma vía también para workspaces en formato de texto (cameras.txt) y exportaciones ETH3D. Véase el backend Q6 del Capítulo 9 para detalles. Funciona en Modo principiante igual que en Modo Experto.
¿Cuándo pasar a la siguiente etapa?
Puedes hacer clic en Start Processing en cuanto (a) se haya importado al menos una imagen o un vídeo y (b) el banner de validación esté en naranja o haya desaparecido. Con un banner rojo, la app sí te deja arrancar, pero con alta probabilidad podrás cancelar el procesado de inmediato. Recomendado: al menos 20 imágenes, nítidas, con solapamiento claro entre tomas consecutivas, todas aproximadamente desde la misma distancia al motivo. Elige un ajuste preestablecido antes de empezar que encaje con tu presupuesto de tiempo — con 30 imágenes y el ajuste Quick estás listo en unos minutos, con Quality dura más bien 1–2 horas.
Z2 — Procesado (SfM + Entrenamiento)

Fase SfM (se están alineando las cámaras): El gran círculo de progreso muestra el progreso de la subetapa (aquí 41 % de la sesión Apple Photogrammetry en curso). Texto de estado "Aligning cameras…" arriba a la izquierda. La ruta de migas marca "Cameras" como etapa activa. La barra de estado superior muestra el progreso global de la pipeline (25 %) — SfM ocupa la primera mitad de la barra. Cámaras de wireframe flotantes en el fondo sugieren que se están estimando poses.

Fase de entrenamiento (se están optimizando los Gaussianos): El icono de subetapa cambia a "Training Gaussians", el porcentaje cuenta iteraciones del ajuste preestablecido elegido (aquí 400 / 5 000 para el ajuste Preview, es decir, 8 % de la etapa). La línea de métricas en vivo muestra el valor de loss (0,1642), iteraciones por segundo (138,7 it/s) y ETA (33 s). El progreso global de la pipeline sube del 50 % al 100 % durante esta fase. El botón Pause (en lugar de solo cancel en la fase SfM) permite reanudar después; Cancel descarta el resultado del entrenamiento y vuelve a Z1.
En cuanto corre la pipeline, la app oculta el overlay de importación y muestra una pantalla de procesado a pantalla completa. En el medio corre un gran círculo de progreso (220 × 220 píxeles) con icono de etapa, texto de estado y número de porcentaje; en el fondo, una animación sutil de splats visualiza simbólicamente el cálculo en curso. Arriba a la izquierda se puede mostrar un panel de info que muestra métricas en vivo de entrenamiento y SfM. Abajo hay Pause/Resume, Cancel y, en caso de error, un botón Retry.
C-18SplatTrainingView (animación de fondo)
DÓNDE
Fondo a pantalla completa tras el círculo de progreso, oculto al cancelar o en error.
TÉCNICO
Animación decorativa que, según el progreso de la pipeline (0…1), renderiza un número creciente de pequeñas partículas splat animadas. La fuente es un valor de progreso calculado que mapea las fases SfM a 0–0,2 y el entrenamiento a 0,2–1,0 (Frame Quality a 0–0,05). De este modo los splats visiblemente "se construyen" mientras corre el entrenamiento. Puramente decorativo — la visualización no muestra resultados intermedios reales del entrenamiento actual (eso sería la live preview en Modo Experto). En cancel o fallo se oculta y solo se mantiene visible el círculo de estado.
C-19Gran círculo de progreso
DÓNDE
Centro de la pantalla de procesado, 220 × 220 píxeles.
TÉCNICO
Dos anillos renderizados uno sobre otro: por fuera un anillo de pista atenuado, por dentro un anillo de progreso relleno con stroke de acento o rojo (rojo en error). Dentro del círculo, un icono de etapa (cerebro para entrenamiento, cámara para SfM, película para extracción de fotogramas de vídeo, destellos para Frame Quality), título de etapa y el número de porcentaje animado en vivo en fuente redondeada de 32 puntos. El icono pulsa suavemente mientras el procesado está activo. La visualización interpola en un timer de 30 Hz de forma suave hacia el progreso real actual — con un "creep" constante (0,0003/frame) más un share proporcional (4 % del gap) y un techo suave que se fija al 80 % del siguiente hito esperado (para SfM a partir de una tabla de hitos codificada). De este modo el progreso se siente fluido, incluso si las actualizaciones SfM reales solo llegan cada pocos segundos.
C-22Botón Info (mostrar métricas)
DÓNDE
Arriba a la izquierda en la pantalla de procesado, 32 × 32 píxeles.
TÉCNICO
Botón simple con fondo material. Conmuta el panel de info on/off. El icono cambia entre info-circle outline e info-circle filled cuando está activo. Animación de fade-in suave. Tooltip "Show detailed processing metrics".
C-23Panel de info (métricas en vivo)
DÓNDE
Abajo a la izquierda en la pantalla de procesado, visible solo cuando showProcessingInfo == true.
TÉCNICO
Panel de dos columnas con fondo material ultradelgado. Columna izquierda: líneas de info específicas de etapa — para SfM, texto de estado y porcentaje; para entrenamiento, iteración, loss combinado, loss L1, loss D-SSIM, número de Gaussianos (coloreado en naranja), velocidad (it/s), tiempo transcurrido, ETA calculado, grado SH y learning rate. Columna derecha: texto de estado, string de info de tiempo, gráfico de loss inline (véase C-28) y un discoverability nudge (véase C-32). Todos los valores se leen del estado de entrenamiento, que se actualiza en cada tick de entrenamiento.
C-25Botón Pause/Resume
DÓNDE
Barra de navegación inferior, visible solo durante la etapa de entrenamiento (NO durante SfM) y mientras corre el procesado.
TÉCNICO
Botón con borde. Llama a Pause o Resume según el estado. La etiqueta cambia entre "Pause" (con icono de pausa) y "Resume" (icono de play). Durante el paso SfM el botón no se muestra, porque Apple Photogrammetry no tiene semántica de pausa. El estado de pausa preserva por completo la iteración, el estado de Gaussianos y el momentum del optimizador — Resume continúa donde se detuvo previamente.
C-26Botón Cancel
DÓNDE
Barra de navegación inferior, visible mientras corre el procesado (SfM o entrenamiento).
TÉCNICO
Botón rojo con borde. Abre un diálogo de confirmación con título "Stop and discard progress?", botones "Discard Progress" (destructivo) y "Keep Running" (cancel). En la confirmación se fija la cancel flag, se termina la tarea de entrenamiento, se termina el subproceso SfM si procede, y se escribe una línea de resumen con estado de cancelación en el log JSONL. A diferencia de Pause, los buffers y el estado de entrenamiento se descartan.
C-27Botón Retry
DÓNDE
Barra de navegación inferior, visible cuando la pipeline ha fallado (el estado SfM empieza con "SfM failed" o el entrenamiento está en estado de error).
TÉCNICO
Botón de acento. Reinicia toda la pipeline. Antes de arrancar se comprueba si aún están presentes las imágenes/vídeos importados. Los logs de error anteriores se mantienen en el directorio JSONL; un nuevo run escribe un nuevo archivo de log con la marca de tiempo actual.
C-28Gráfico de loss inline
DÓNDE
En el panel de info, columna derecha, visible solo durante el entrenamiento con historial no vacío.
TÉCNICO
Área de dibujo compacta (40 píxeles de alto), dibuja el historial de loss como línea de 1 píxel en color de acento. Los datos se filtran a valores finitos (protección NaN para entrenamientos inestables). Min/Max se calculan sobre todo el historial — el gráfico hace así auto-zoom al rango de valores. El último valor de loss queda arriba a la derecha sobre el gráfico. El propio historial se construye en el estado de la app en cada tick de entrenamiento (típicamente cada 100 iteraciones).
C-32Discoverability nudge (pista del Modo Experto)
DÓNDE
En el panel de info, columna derecha abajo, visible solo durante el entrenamiento Y en Modo principiante.
TÉCNICO
Línea pequeña con icono de ojo y texto de caption "Switch to Expert Mode (⌘2) for live splat preview", en tono discreto y fuente de 10 puntos. Sin elemento interactivo, solo una pista. No reacciona al clic — el usuario tiene que pulsar realmente Cmd+2 o hacer clic en el menú Mode → Expert Mode.
¿Cuándo pasar a la siguiente etapa?
La app cambia automáticamente a Z3 (Preview) en cuanto el entrenamiento se completa con éxito — no tienes que hacer clic. La barra de navegación inferior cambia entonces de Pause/Cancel a un botón Back (atrás a Import) y un botón Export (adelante a Export). En casos de error (mensaje de error rojo, el icono de etapa es una X) aparece Retry en su lugar, y tienes que decidir si arrancar de nuevo o ir atrás a Import con Back para cambiar material de imagen.
Z3 — Previsualización (rotar modelo 3D)


La ruta de migas marca "Preview" como etapa activa. La vista 3D a pantalla completa renderiza la escena de ramo ya entrenada (conjunto de prueba sintético en Blender, subconjunto de 60 frames de 960 cámaras hemisféricas). Barra de estado de cabecera: "Training complete — 3 022 Gaussians in 13 s" — da el número final de Gaussianos y el tiempo de entrenamiento. Arrastrar en la vista rota la cámara (yaw/pitch); la rueda de scroll hace zoom a lo largo de la dirección de visión. El botón "Back" (abajo a la izquierda) vuelve a Z2 para reanudar o re-run; el botón "Export" (abajo a la derecha, primario) navega adelante a Z4.
Tras completarse el entrenamiento, la app aterriza automáticamente en la previsualización. Aquí ves tu modelo Gaussian Splatting terminado en una vista Metal a pantalla completa y puedes rotarlo, hacer zoom y desplazarlo con ratón y trackpad. Sobre la vista hay un pequeño overlay con controles de cámara e info — auto-rotación, estadísticas de entrenamiento, botón de reset. Antes del siguiente paso (Export) es recomendable inspeccionar el modelo desde distintos ángulos para asegurarte de que la reconstrucción está limpia.
C-36SplatViewportView (vista principal 3D)
DÓNDE
Fondo a pantalla completa del paso de previsualización.
TÉCNICO
Vista 3D basada en Metal que renderiza la nube de puntos terminada. El renderer es el fork de MetalSplatter vendored con fixes RadianceKit para popping/flickering. Pipeline de renderizado basado en tiles con transparencia independiente del orden. Si el renderer no puede inicializarse (p. ej., porque Metal no está disponible en el sistema), aparece en su lugar un fondo negro con texto "Metal not available". La vista ignora el safe area, para que el modelo llegue al borde de la ventana.
C-37CameraControlsOverlay (overlay de controles)
DÓNDE
Sobre la vista, flotante.
TÉCNICO
Overlay UI compacto con botones para auto-rotación (turntable), reset de cámara, elección de fondo (gris/negro/blanco), guardar captura, toggle del panel de info. Vincula a los parámetros de cámara (distancia, azimut, elevación, target, FOV) y controla el auto-turntable. Durante el entrenamiento (cuando el usuario en Modo Experto quiere ver la vista corriendo en paralelo), el overlay muestra además una línea compacta de estado de entrenamiento.
C-38Botón Export (barra de navegación)
DÓNDE
Barra de navegación inferior en Z3.
TÉCNICO
Botón de acento con etiqueta "Export" e icono de share. El clic dispara el cambio a Z4. Antes, la vista padre comprueba si la versión completa está desbloqueada — si no, en lugar de la etapa de exportación se muestra la vista de lock (véase U-06).
¿Cuándo pasar a la siguiente etapa?
Antes de exportar, rota el modelo una vez por completo y comprueba: ¿Están presentes todas las áreas que cubriste en tus imágenes de entrada? ¿Hay "floaters" flotantes (nubes de splat Gaussianos flotando libremente en el aire)? ¿Se ve el fondo/cielo limpio o emborronado? Los problemas graves solo se pueden corregir reentrenando — ya sea con más imágenes, un ajuste preestablecido distinto, o en Modo Experto con ajustes de reducción de floaters.
Z4 — Exportar (elegir formato y guardar)


La ruta de migas marca "Export" como etapa activa. Cuadrícula de tarjetas a la izquierda "Choose Export Format" con las seis opciones: PLY (estándar 3DGS, 742 KB, con coeficientes SH completos — preseleccionado aquí con check azul), SPZ (formato 3DGS comprimido, ~90 % más pequeño que PLY, 74 KB), glTF (con extensión KHR_gaussian_splatting, 708 KB), .splat (compatible con visor web vía antimatter15, 96 KB), Orbit Video (MP4 360° de la escena, cálculo de tamaño en vivo), Web Viewer (HTML autónomo con visor 3D embebido, 133 KB). Las cifras de tamaño se calculan en vivo a partir del número actual de Gaussianos y el overhead del formato. A la derecha, "Export History" lista las exportaciones ya completadas con insignia de formato, nombre de archivo y marca de tiempo — el clic revela en Finder. CTA primaria abajo a la izquierda: "Export PLY (3DGS Standard)" con subtítulo de Gaussianos "2.991 Gaussians · SH degree 3".
En el último paso eliges entre 6 formatos de exportación (PLY, SPZ, glTF, .splat, vídeo orbital, visor web) mediante una cuadrícula de tarjetas de 2 columnas, haces clic en Export y eliges el destino en el diálogo de macOS. A la derecha corre un historial de todas las exportaciones previas — al seleccionar tarjeta se muestra de inmediato bajo cada una el tamaño de archivo estimado, así p. ej. prefieres SPZ si quieres ir a la web (pequeño), y PLY si quieres importar a otro software (SuperSplat, Postshot, Blender vía plugin) (grande y completo).
C-39Cuadrícula de formatos de 2 columnas
DÓNDE
Lado principal izquierdo del paso de exportación.
TÉCNICO
Cuadrícula de tarjetas con dos columnas flexibles y 12 puntos de espaciado. Itera sobre los formatos ofrecidos en Modo principiante — un subconjunto filtrado de la lista completa de formatos que contiene solo los 6 más importantes: PLY, SPZ, glTF, .splat, vídeo orbital, visor web. Compressed PLY y SOG se ofrecen SOLO en Modo Experto.
C-40Botón de tarjeta de formato
DÓNDE
Cada tarjeta en la cuadrícula.
TÉCNICO
Botón simple con layout de tarjeta: icono (p. ej., document zipper para PLY, archive box para SPZ, icono de vídeo para vídeo orbital) arriba, nombre de formato como headline, caption de descripción (truncado a 2 líneas), debajo el tamaño de archivo estimado (calculado en vivo a partir de formato, número de Gaussianos y grado SH y formateado como KB/MB). Al hacer clic se selecciona el formato. La tarjeta seleccionada recibe un fondo de acento, borde de acento y un icono de check arriba a la derecha. El tooltip es la descripción del formato.
C-41Deslizador de duración de vídeo
DÓNDE
Bajo la cuadrícula de formatos, visible solo cuando se elige un formato de vídeo (vídeo orbital o vídeo social).
TÉCNICO
Deslizador 3–30 segundos en pasos de 1 segundo, vincula a la duración del vídeo en el estado de la app. Ancho máximo 300 píxeles. Solo se muestra cuando se selecciona un formato de vídeo. Para formatos no de vídeo, el deslizador se elimina por completo de la vista — sin espacio muerto.
C-42Botón Export
DÓNDE
Bajo la cuadrícula de formatos (y bajo el deslizador de duración, si se eligió vídeo).
TÉCNICO
Gran botón de acento. Etiqueta: "Export {format-name}", icono de share. Al hacer clic se abre el diálogo de guardar de macOS con una extensión adecuada al formato y nombre predeterminado "scene.{ext}"; en la confirmación, la exportación se escribe en la URL elegida. Deshabilitado cuando no hay resultado de entrenamiento o ya está corriendo una exportación.
C-43Barra de progreso de exportación
DÓNDE
Bajo el botón Export, visible solo mientras corre una exportación.
TÉCNICO
Visualización de progreso con ancho máximo 300 píxeles, debajo el caption "Exporting… N %". El valor corre de 0 a 1 y se actualiza durante la escritura — con PLY en chunks de 10 000 Gaussianos, con SPZ una vez tras la cuantización, con vídeo orbital en intervalos de frame.
C-44Visualización de error de exportación
DÓNDE
Bajo la barra de progreso, visible solo cuando ocurrió un error durante la última exportación.
TÉCNICO
Línea roja con icono de aviso y texto de error. Fondo rojo con opacidad del 8 %, esquinas redondeadas. Ancho máximo 400 píxeles. Causas comunes de error: SOG espera cwebp en el PATH del sistema (no compatible con App Store); error de escritura con espacio de disco lleno; error de sandbox con destinos de guardado fuera del área permitida.
C-46Lista de historial de exportación
DÓNDE
Lado derecho del paso de exportación.
TÉCNICO
Lista sobre el historial de exportación (persistente como JSON en los UserDefaults, mantenida tras cada exportación exitosa). Cada fila muestra insignia de formato (pequeña, color de acento), marca de tiempo (HH:mm), nombre de archivo (truncado a 1 línea) y tamaño formateado. El clic en una fila abre Finder con el archivo seleccionado. Estado vacío: "No exports yet".
C-48Menú contextual del historial (clic derecho)
DÓNDE
Clic derecho en una fila del historial.
TÉCNICO
Menú contextual en cada entrada de la lista con dos acciones: "Reveal in Finder" (abre Finder con archivo seleccionado, como el clic simple) y "Copy Path" (coloca la ruta de archivo completa como texto en el portapapeles). Lo último es útil para arrastrar y soltar en otras apps o para pasar a la línea de comandos.
¿Cuándo está completo el flujo?
Tras una exportación exitosa, tienes tu modelo 3D como archivo en disco y el historial muestra una nueva entrada. No hay un botón "Done" — puedes anexar cualquier número de exportaciones en distintos formatos sin reentrenar. Si quieres volver a la previsualización (p. ej., para comprobar de nuevo una perspectiva de cámara), usa el botón Back en la barra de navegación inferior. Si quieres empezar una escena completamente nueva, ve vía Back a Z1 y usa allí Clear All, o File → New Project (Cmd+⇧+N).
Cambiar a Modo Experto
Pulsa Cmd+2 en cualquier momento o elige Mode → Expert Mode (M8). Todo el estado se conserva: imágenes importadas, ajuste preestablecido elegido, entrenamiento en curso o terminado, nube de puntos terminada, historial de exportación, incluso la etapa actual. En Modo Experto, en lugar de la etapa de cuatro pasos, se muestra la barra lateral completa del Inspector con todos los ~150 campos de control. En particular: el Project Navigator (véase Capítulo 2) ofrece las operaciones de imagen extendidas (botón menos, borrado por backspace, deshacer con Cmd-Z, previsualización Quick Look), la previsualización en vivo en la vista durante el entrenamiento, así como todos los parámetros de loss, MCMC, densificación y Mip-Splatting. Cmd+1 cambia de vuelta a Modo principiante — esto tampoco pierde estado.
Preguntas frecuentes
¿Por qué mi botón Start Processing se mantiene atenuado?
Aún no has importado imágenes o un vídeo. Arrastra al menos un archivo a la zona de drop o usa "Browse Files". En cuanto la lista de imágenes a la derecha contenga al menos una entrada, el botón se vuelve activo. (Con solo 1–2 imágenes sí arranca, pero SfM aborta directamente con un error — véase el banner de validación rojo.)
¿Por qué mi botón Export está bloqueado?
En Modo principiante hay dos niveles: (a) Si la pipeline de entrenamiento aún no ha terminado y no tienes ninguna, el botón está deshabilitado — tienes que terminar primero Z2. (b) Si aún no has comprado la versión completa (PurchaseManager.hasAccess == false), ves, en lugar de la etapa de exportación, una vista de lock con icono de candado y botón "Unlock Full Version", que abre el sheet de compra. Los ajustes Quick y Preview permiten entrenar gratis, pero la exportación es premium.
¿Por qué no puedo elegir un ajuste preestablecido?
Puedes elegirlo — pero si tocas un ajuste premium (Balanced, Quality, variantes MCMC) sin una versión completa comprada, el selector vuelve automáticamente a Preview y el sheet de compra se abre. Quick y Preview son los únicos ajustes utilizables libremente.
¿Por qué mi zona de drop está vacía y de un gris discontinuo, aunque estoy arrastrando imágenes?
Probablemente un desajuste de tipo UTI. La app acepta JPG, PNG, TIFF, HEIC, MP4, MOV más los formatos splat propios de la app. Otros formatos de imagen (BMP, GIF, WebP, formatos RAW) NO se reconocen. Si estás seguro de que tu tipo de imagen debería estar incluido, comprueba la extensión del nombre de archivo — la app va principalmente por extensión, no por contenido del archivo.
¿Por qué SfM tarda tanto, aunque solo tengo 30 imágenes?
Apple Photogrammetry no escala linealmente — con algunas constelaciones de imagen (espacios interiores con texturas complejas, motion blur, mala luz) tarda significativamente más de lo que sugeriría el número de imágenes. Si SfM sigue colgado tras más de 10 minutos con 30 imágenes, aborta e inténtalo de nuevo con mejor material, o pasa al Modo Experto y prueba COLMAP/Native SfM (Cmd+2 → Inspector → Camera Alignment).
¿Dónde encuentro mis training logs?
Help → Open Training Logs (Cmd+⇧+L). Eso abre ~/Documents/RadianceKit/Logs/. Cada sesión de entrenamiento escribe su propio archivo JSONL con marca de tiempo en el nombre de archivo — la primera línea es la configuración, después sigue una línea de progreso cada 100 iteraciones, la última línea es el resumen con loss final y flag de éxito.