Carteles, envases, tarjetas de visita — el QR está en todas partes, y colocar un cuadrado en blanco y negro sobre un diseño trabajado durante semanas siempre ha dolido. Pero el QR tiene ese aspecto por una razón: es lo que se construye cuando una cámara y un procesador de 1994 tienen que poder leerlo.
Esas restricciones se han levantado en buena parte. Las cámaras de los teléfonos y la potencia de cálculo van sobradas. Así que, en lugar de perseguir solo el reconocimiento, ese margen se ha gastado en que merezca la pena mirarlo. No es un sustituto del QR: es un asiento a su lado. El resultado es un código de barras 3D — impreso en plano, pero percibido en relieve.
Elija según dónde vaya a ir. Los tipos planos comparten el mismo contrato de datos y solo se diferencian en la silueta; True 3D H es la extensión de cubo real del grupo Y, con un formato propio. Todos los códigos de abajo contienen https://tl.estre.so.
Tres caras n×n. Una marca de una sola pieza, buena para rotulación y merchandising.
Un formato propio para un cubo real, con datos distintos en 1…6 caras. El generador también exporta un vídeo de rotación (MP4), plantillas de papel y archivos de impresión 3D.
La forma base. Las celdas romboidales se extienden alrededor de un patrón localizador central.
La muesca de las 3 fija la orientación y el tipo en la propia silueta. La gama C0–C3 es para escaneo a corta distancia; desde C1, acerque el código o use el zoom.
Un núcleo hexagonal más parches de esquina, que forman un triángulo equilátero.
Un triángulo unido con su imagen a 180°. Mayor carga útil con la misma k.
La carga útil neta es con ECC-M. Todos los tipos, H incluido, pueden llevar al lado un QR de respaldo, de modo que quede una vía donde un código TL no se pueda leer. En H va por defecto en la esquina superior izquierda.
El QR fue la respuesta correcta para su momento. Dos valores, módulos cuadrados, patrones localizadores grandes — cada una de esas decisiones existía para que una cámara débil pudiera leerlo igualmente. Con esas restricciones, renunciar a la estética era razonable.
Esa premisa ha cambiado. Las cámaras de los teléfonos de hoy no se parecen en nada a aquellas, y el procesado de vídeo en tiempo real corre dentro de un navegador. Ese margen podía ir a la densidad — o podía ir a cómo se ve. Por eso existe este formato.
A cambio se renunció a la densidad. Las celdas romboidales aprovechan peor la superficie que los módulos cuadrados. Este formato no compite en densidad. Si hay que llevar mucho, la herramienta adecuada es el QR.
Un teselado rhombille divide cada celda hexagonal en las caras T, L y R.
Ordenar las tres luminancias da 3! = 6 resultados — un dígito en base 6.
Reed–Solomon sobre el cuerpo primo GF(211) corrige los errores.
Invariante ante transformaciones monótonas. Los cambios de iluminación global, el gamma y el mapeo tonal de una impresora son monótonos: no pueden alterar un orden. Si el orden sobrevive, el valor sobrevive.
El renderizador queda libre. El contrato de datos es solo «el orden entre las caras, más una separación mínima». Dentro de eso, el color, la textura, los degradados por cara y la animación están abiertos. Esa libertad es el sentido del formato.
Pero nada se vuelve bonito por sí solo. Lo que se abre es el contrato, no el resultado. Lo que dibuje dentro sigue siendo su trabajo.
El decodificador funciona. Los cuatro tipos se leen en fotos de dispositivos reales; queda subir la precisión y la velocidad. Cada tiempo de abajo es una decodificación de una foto fija tomada con un teléfono real, no el tiempo hasta el primer enganche ni una tasa de acierto en directo.
| Tipo | Fotos reales decodificadas | Una decodificación en foto fija | Validación en directo |
|---|---|---|---|
| Type Y — cubo único | 9 / 16 | ≈ 1.8 s | faltan más medidas |
| Type O — campo hexagonal | 29 / 48 | ≈ 1.9 s | faltan más medidas |
| Type A — silueta triangular | 18 / 19 | ≈ 2.4 s | faltan más medidas |
| Type K — hexagrama | 18 / 27 | ≈ 3.1 s | faltan más medidas |
| Variante QR central (los cuatro tipos) · 2026-08-13 | 8 / 9 | — | faltan más medidas |
Una decodificación de una sola foto fija. Ahora el Type O es el más rápido; A, K e Y quedan cerca detrás. ⚠ Una versión anterior de esta página decía que el Type Y era el más rápido: era una muestra de 9 fotos y, con una muestra más amplia, el orden se invirtió. No lea esto como tiempo de primer enganche en vivo.
El tiempo de una decodificación en foto fija no predice cómo se siente el escaneo en directo. En las primeras medidas sobre un dispositivo real, un fotograma rápido podía dar aun así un primer enganche lento cuando hacían falta muchos fotogramas antes de uno acertado, y el orden de los tipos difería de esta tabla de foto fija. Esa traza cubre un solo dispositivo y una muestra pequeña, así que todavía no asignamos una nota de uso en directo.
Las condiciones de captura también pesan. En la medición, 9 píxeles por celda fue el suelo de decodificación y, a la misma distancia, un objetivo ultra gran angular encuadra el código más pequeño y baja de esa línea (ultra gran angular 7.6 px falló / gran angular 9.1 px acertó). Por eso el escáner ofrece un selector de objetivo.
En la variante de QR central, un bloque QR sustituye al patrón localizador central. Sus patrones aportan el punto de entrada de posición y orientación con el que se decodifica el cuerpo TL de alrededor. Por defecto el QR sigue siendo un respaldo con un enlace al lector; la carga útil se queda en el cuerpo TL. Desde el 2026-08-28, el generador usa por defecto, para los tipos O, C, A y K, el localizador TL central con un QR de respaldo exterior en la esquina superior izquierda; el QR central sigue siendo una de las opciones de localizador. La fila de QR central de la tabla de arriba mide esa variante (ronda del 2026-08-13).
El Type C y el True 3D H no figuran en la tabla de arriba; para H no se garantizan tasas de reconocimiento ni FPS con cámaras reales. El escáner tiene dos motores: R1 lee los tipos TL planos fotograma a fotograma y R2, el predeterminado, reúne los tipos Y y H a lo largo de varios fotogramas. En H solo muestra el resultado cuando las caras necesarias superan las comprobaciones RS/CRC. En los navegadores con BarcodeDetector, R2 también lee códigos QR normales; un enlace leído de un código QR nunca se abre automáticamente — compruebe la dirección y luego tóquelo.
Medido el 2026-08-27 · muestra de 110 fotos (cada una probada a 960 · 1440 px de lado corto). ⚠ La mayor parte de la muestra está fotografiada de una pantalla: no son cifras de impresión ni de colocación real. Además, 123 de los 233 fotogramas del corpus son tomas límite guardadas precisamente porque todavía no decodifican — aquí quedan excluidas. Solo la fila de QR central viene de la ronda anterior del 2026-08-13.
La especificación del formato y la implementación de referencia se publican bajo la Licencia Apache 2.0. JavaScript puro, scripts de compilación Node.js en el repositorio, cero dependencias en ejecución — funciona como un único archivo HTML.
Implementar solo el decodificador ya cuenta como implementación conforme. La adopción empieza por el lado que lee.
| Sitio | Función | Estado |
|---|---|---|
| tlcube.estre.so | Generador | activo |
| tlscan.estre.so | Escáner | activo — estado › |
| tl.estre.so | Sitio de presentación | está aquí |