Saltar al contenido
🧊
Desarrollo Web

Three.js y webs 3D: cuándo merece la pena y cuándo es solo peso de más

28 de julio de 2026·8 min

Qué es Three.js, en qué proyectos el 3D justifica su coste y en cuáles es una animación cara que hunde el rendimiento. Con las alternativas más baratas que casi nadie propone.

Cada cierto tiempo llega la misma petición: "quiero algo en 3D en la home, como el de Apple". Es una petición razonable —el 3D bien hecho impresiona— pero casi siempre se plantea al revés: primero se decide la tecnología y después se busca para qué sirve.

Merece la pena hacerlo al contrario. Este artículo va de cuándo el 3D en una web se paga solo y cuándo es una animación cara que ralentiza todo lo demás.

Qué es Three.js exactamente

Three.js es una librería de JavaScript que se apoya en WebGL, la tecnología que permite al navegador hablar directamente con la tarjeta gráfica. Sin ella, programar 3D en la web significa escribir shaders y gestionar búferes a mano; con ella, trabajas con conceptos manejables: una escena, una cámara, luces y objetos.

Es software libre, maduro y funciona en cualquier navegador moderno sin plugins. Todo lo que verás por ahí como "web 3D interactiva" está hecho con Three.js o con algo construido encima.

Cuándo el 3D se gana su sitio

La regla es sencilla: el 3D vale la pena cuando lo que enseñas es realmente espacial y el usuario necesita manipularlo. No cuando queda bonito.

  • Configuradores de producto. Un sofá en catorce telas, unas zapatillas con seis colores de suela, una cocina montada. Aquí el 3D sustituye a un catálogo de cientos de fotos imposible de mantener, y además reduce devoluciones porque el cliente ha visto exactamente lo que compra.
  • Inmobiliaria y espacios. Recorrer un piso que aún no está construido, o entender la distribución de una nave. Una planta en 2D no transmite eso.
  • Piezas técnicas e industriales. Maquinaria, componentes, despieces. Poder girar la pieza y ver dónde encaja cada parte es información, no decoración.
  • Datos con forma espacial. Mapas de instalaciones, redes, edificios con sensores. Si el dato tiene coordenadas, el 3D es el formato natural.
  • En los cuatro casos hay algo en común: si quitas el 3D, el usuario pierde información. Esa es la prueba del algodón.

    Cuándo es solo peso de más

    El patrón opuesto también es fácil de reconocer: una figura que gira en la cabecera, unas partículas que siguen al ratón, un logo con volumen. Queda bien en la presentación del diseño y no aporta nada al visitante.

    El problema no es estético, es de coste. Esa decoración se paga en los primeros segundos de carga, que son justo los que deciden si alguien se queda. Y se paga en cada visita, en cada móvil, para siempre.

    Si al quitar el 3D nadie echa nada de menos salvo el equipo de diseño, no era necesario.

    Lo que cuesta de verdad

    Peso de descarga. Three.js no es una librería pequeña. Importando solo lo imprescindible se puede recortar bastante, pero una escena básica con carga de modelos y controles sigue siendo de las cosas más pesadas de la página. Y eso antes de contar el modelo 3D, que tiene su propio tamaño.

    Trabajo de GPU. El 3D no se dibuja una vez y ya está: se redibuja muchas veces por segundo mientras esté en pantalla. En un portátil no se nota. En un móvil de gama media se traduce en calor, batería y ventilador, y el navegador puede acabar limitando el rendimiento.

    Métricas de Google. Todo lo anterior empuja en la dirección equivocada de los Core Web Vitals: más JavaScript que descargar y ejecutar, hilo principal ocupado, y una cabecera que tarda más en estar lista. Si el 3D está en la parte alta de la página, afecta directamente a lo que Google mide.

    El problema que casi nadie menciona

    Una escena de Three.js se dibuja dentro de un elemento canvas. Y un canvas es opaco: Google no ve nada dentro, y un lector de pantalla tampoco.

    Esto significa que si el mensaje principal de tu página está dentro del 3D, para un buscador esa página está vacía. Y para una persona ciega, también.

    La solución no es complicada, pero hay que aplicarla a propósito: el contenido real —titulares, descripciones, precios, botones— tiene que existir en HTML normal junto al canvas, no dentro de él. El 3D acompaña; no sustituye.

    Alternativas más baratas que casi nadie propone

    Antes de montar una escena completa, conviene descartar estas:

  • Transformaciones 3D de CSS. Rotar, inclinar o dar profundidad a elementos normales. Sin librerías, casi sin coste y sorprendentemente vistoso.
  • Un vídeo. Si el 3D no necesita interacción y solo tiene que verse, un vídeo bien comprimido pesa menos, carga antes y funciona en todas partes.
  • Componentes de visor 3D. Para enseñar un modelo que el usuario puede girar y poco más, existen componentes web ya hechos que resuelven el caso sin escribir una línea de WebGL.
  • Herramientas visuales tipo Spline. Permiten diseñar la escena sin programar y exportarla lista para la web. Menos control, mucho menos tiempo.
  • Una de estas cubre la mayoría de peticiones que empiezan con "quiero algo en 3D".

    Si decides hacerlo, hazlo bien

    Cuando el 3D sí está justificado, estas decisiones marcan la diferencia entre una web rápida con 3D y una web lenta:

  • Cargarlo tarde y solo si hace falta. El código del 3D no debe formar parte del paquete inicial. Se carga bajo demanda, cuando el usuario se acerca a esa zona de la página.
  • Comprimir el modelo. Los formatos estándar de 3D para web admiten compresión de geometría y de texturas. La diferencia entre un modelo comprimido y uno exportado tal cual suele ser enorme.
  • Poner una imagen de reemplazo. Mientras carga, y para quien tenga el móvil justo, una imagen estática del modelo cubre el hueco sin dejar un rectángulo en blanco.
  • Respetar a quien pide menos movimiento. Los sistemas operativos tienen un ajuste de "reducir movimiento" y el navegador lo comunica. Hay que detenerlo o congelarlo cuando esté activado: no es un capricho, hay gente a la que el movimiento le provoca mareo.
  • Parar cuando no se ve. Si la escena está fuera de pantalla, no tiene sentido seguir redibujándola. Esto solo es batería quemada.
  • Cómo decidir en dos preguntas

    Antes de encargar nada, respóndelas con honestidad:

    ¿El usuario pierde información si quito el 3D? Si la respuesta es no, no lo necesitas: necesitas una buena imagen o un vídeo.

    ¿Estoy dispuesto a que la página cargue más despacio a cambio? Si el 3D está en la cabecera y tu negocio depende de que la gente no se vaya, la respuesta honesta suele ser que no.

    Con dos noes, te acabas de ahorrar bastante dinero. Con dos síes, tienes un caso de uso real y merece la pena hacerlo bien.

    En resumen

    Three.js es una herramienta excelente resolviendo problemas espaciales concretos: configurar, recorrer, inspeccionar. Como decoración de cabecera es de las formas más caras que existen de ralentizar una web.

    La pregunta correcta nunca es "¿puedo poner 3D?". Es "¿qué entiende mejor mi cliente si se lo enseño en 3D?". Si tienes respuesta a la segunda, adelante.

    ¿Tienes un proyecto en mente?

    Cuéntanos qué quieres conseguir.

    Hablemos