UN VOLUMEN CONTINUO
Cada chunk ocupa 32³ m³. Su malla nace de un campo de densidad 3D compartido: las cuevas atraviesan los límites entre chunks y el corte revela su interior.
Preparando generador en segundo plano…
Órbita libre · pulsa el terreno para inspeccionar
Cada chunk ocupa 32³ m³. Su malla nace de un campo de densidad 3D compartido: las cuevas atraviesan los límites entre chunks y el corte revela su interior.
Pulsa sobre el terreno para ver las coordenadas, los límites y los triángulos de un chunk.
Selecciona una superficie sólida con «Enviar punto a terreno» en el laboratorio de planetas. El terreno usa el mismo campo planetario: al caminar conserva el relieve original, la gravedad y los materiales, y consulta los datos atmosféricos disponibles en cada posición. Los enlaces antiguos que solo contienen una cuadrícula conservan su límite inicial; vuelve a seleccionar el punto para obtener el planeta completo.
WASD mueve, el ratón o el arrastre cambia la mirada y Shift acelera. Esc libera el ratón; R vuelve al punto inicial. Con gravedad, Espacio salta. En vuelo libre, Espacio o E sube y Ctrl o Q baja. También hay controles táctiles.
Los chunks de detalle y de baja resolución siguen la cámara. Sus radios se miden sobre la cuadrícula horizontal de chunks de 32 m y forman cuadrados. Las celdas por lado del chunk son configurables: más celdas conservan más detalle y requieren más trabajo. Los cambios se generan en un Web Worker; la cámara continúa en el hilo principal. La cola da prioridad al detalle cercano, después a los chunks de baja resolución y finalmente al fondo. Los trabajos que quedaron fuera del recorrido se descartan.
En un planeta, el fondo usa las mismas seis caras y coordenadas del Zoom. Cada cara se divide en 8 × 8 por defecto; en cada nivel se refina la vecindad de 3 × 3 que contiene al observador. El resto conserva sus padres, incluyendo las caras vecinas, hasta conectar con el anillo de chunks. Las seis caras de respaldo permiten cubrir el horizonte completo. La proyección incorpora la curvatura y el relieve físico del planeta: las montañas lejanas permanecen elevadas sobre su superficie. Las celdas base por parche y la división por nivel se pueden cambiar.
«Conservar siluetas lejanas» activa el LOD adaptativo. El generador compara muestras del relieve original con la superficie simplificada y estima su diferencia en píxeles según la distancia, la altura de la cámara y el tamaño de la vista. Los parches que perderían relieve visible reciben más celdas, hasta 32 por lado; las zonas llanas conservan su base. El objetivo de 1, 2 o 4 píxeles permite priorizar calidad o ligereza. La evaluación avanza por lotes en el Worker y reutiliza sus muestras; los chunks cercanos conservan la prioridad. El muestreo y la geometría tienen presupuestos, por lo que el error es una estimación y los picos menores que las muestras disponibles todavía pueden simplificarse.
El detalle del fondo sube y baja con umbrales distintos para evitar oscilaciones al moverse cerca de un límite. También se adapta al ascender o cambiar el tamaño de la vista. Los parches anteriores conservan la cobertura hasta que están listos los reemplazos del siguiente nivel.
Cada malla se muestra con sus polígonos y alturas definitivos. Los bordes comparten un perfil fijo: cambiar de vecino conserva la misma geometría. «Cargar detalle al acercarme» permite sustituir un chunk de baja resolución cuando entra en el radio de detalle. La malla anterior sigue visible hasta que todas las capas nuevas están generadas y cargadas en GPU; entonces intercambian su cobertura de una sola vez, sin deformar vértices ni dibujarse una encima de otra. El detalle adquirido se conserva hasta salir del radio de carga. Con la opción desactivada, cada chunk conserva su LOD inicial hasta descargarse. Los parches visitados quedan en una caché con límite configurable; al llenarse se retiran los menos recientes que ya no sostienen la vista. El terreno independiente mantiene sus anillos de fondo local y la vista orbital conserva el corte volumétrico.
«Depuración · colores LOD y rendimiento» distingue los chunks de detalle en verde, los de baja resolución en azul y los parches por nivel planetario; una leyenda muestra los niveles y resoluciones visibles. El panel informa FPS de fotogramas renderizados, cola por generar, trabajo activo, cargas GPU y memoria. Geometría CPU, caché del Worker y búferes GPU se cuentan como estimaciones separadas; el uso de memoria JS solo aparece cuando el navegador lo informa. Cambiar esta vista solo modifica el color de dibujo.
Con «Límites de chunks en 3D» aparece la información del chunk de la cámara: coordenadas, polígonos triangulares de su malla, dimensiones lógicas de 32 × 32 × 32 m y celdas por lado. Un chunk vacío muestra cero polígonos; las capas de suelo se identifican por separado. En órbita se inspecciona el chunk central de la vista. La fuente indica si usa la cascada planetaria, una cuadrícula antigua o ruido local. La cascada planetaria conserva exactamente la semilla, divisiones y profundidad de Zoom exportadas; caminar o aumentar la resolución de la malla no agrega pasadas más profundas.
«Superficie de roca» aplica un acabado de piedras irregulares y grietas a los chunks. Puedes cambiar su escala e intensidad sin regenerar el terreno. El acabado queda anclado al terreno, sigue las pendientes y las paredes y mantiene su intensidad al moverte; conserva la iluminación del planeta y el tinte del material. Los parches de fondo usan un único color mineral con pequeñas diferencias de tono y sombreado por cara para distinguir su geometría; esos tonos quedan fijados a cada cara al generarse. La depuración mantiene sus colores LOD. La textura está incluida en los archivos del proyecto y funciona también al abrir el HTML localmente.
El cielo y la extinción son aproximados. El clima global disponible es una instantánea espacial del momento seleccionado, interpolada entre sus muestras; el ciclo de luz avanza sin recalcular ese clima. Los archivos funcionan desde la misma carpeta, sin bibliotecas ni descargas externas. Si el navegador no ofrece Web Workers, se conserva el generador progresivo local.