Configurador 3D para Shopify | 3DVue
Inicio
Servicios
Configurador 3D de producto Visualización 3D web Modelización 3D de catálogo Packshot 3D fotorealista Realidad aumentada
Sectores
Mobiliario Textil y moda Joyería y lujo Artículos publicitarios Equipaciones deportivas
Integraciones
Shopify WooCommerce PrestaShop WordPress
Recursos
FAQ Documentación Acerca de Contacto
Reservar una llamada
Guía para desarrolladores — Shopify

Un configurador 3D
en Shopify.
2 líneas de código.

<viewer-3dvue> es un Web Component nativo. Sin dependencias, sin framework necesario. Funciona en cualquier lugar donde pueda pegar HTML — una sección Liquid, theme.liquid o una plantilla de producto.

Sin dependencias
Compatible Shopify 2.0
Atributos HTML o API JS
IntersectionObserver integrado
theme.liquid
Paso 1
<!-- En <head> o antes de </body> -->
<script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script>
product.liquid
Paso 2
<viewer-3dvue
  name="monViewer"
  src="https://app.3dvue.fr/view?p=AB01-CD02"
></viewer-3dvue>

<!-- Eso es todo. -->
+94%
aumento de conversión en páginas de producto con modelo 3D
Fuente: Shopify
−40%
menos devoluciones tras la visualización 3D del producto
Fuente: Shopify
+27%
más pedidos tras interactuar con el modelo 3D
Fuente: Rebecca Minkoff / Shopify
82%
de los visitantes activan la vista 3D cuando está disponible
Fuente: Cappasity
Instalación

Listo en 3 pasos. Sin herramienta de compilación.

Un Web Component nativo — sin React, Vue ni bundler necesarios. Funciona en cualquier entorno que acepte HTML.

1
Incluir el script

Añada el script a su theme.liquid, dentro de <head> o justo antes de </body>. Una sola inclusión cubre todas sus páginas de producto.

El script CDN anterior es público. El atributo src en el componente <viewer-3dvue> es la URL específica de su configurador — proporcionada por 3DVue al entregar su proyecto.
theme.liquid
<script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script>
2
Colocar el componente

Pegue la etiqueta <viewer-3dvue> donde quiera mostrar el configurador — en su sección Liquid de producto, un bloque personalizado o una sección dedicada. Se requieren dos atributos: name (identificador único) y src (URL de su configurador).

El name se usa para apuntar a este visor desde botones HTML o la API JS. Use un identificador único por página si tiene múltiples visores.
product.liquid
<!-- Atributos requeridos -->
<viewer-3dvue
  name="monViewer"
  src="https://app.3dvue.fr/view?p=AB01-CD02"
></viewer-3dvue>

<!-- Opcional: activa logs de consola -->
<viewer-3dvue
  name="monViewer"
  src="https://app.3dvue.fr/view?p=AB01-CD02"
  debug
></viewer-3dvue>
3
Conectar sus selectores

Añada atributos viewer-3dvue en sus botones o selects existentes para activar cambios de material. Sin JavaScript que escribir — el componente escucha automáticamente los eventos click y change.

product.liquid — selectores de color
<!-- Botón que cambia tela al hacer clic -->
<button
  viewer-3dvue="monViewer"
  viewer-3dvue-clic="setMaterial"
  viewer-3dvue-meshs-materials='{"1":"0n","2":"1a"}'
>
  Azul medianoche
</button>

<!-- Select que cambia el color -->
<select
  viewer-3dvue="monViewer"
  viewer-3dvue-change="setMaterial"
  viewer-3dvue-mesh="2,4"
>
  <option value="0n">Rojo</option>
  <option value="1a">Azul</option>
  <option value="2b">Verde</option>
</select>
Control HTML puro

Sin JavaScript.
Todo en atributos HTML.

El componente escucha automáticamente los eventos click y change en cualquier elemento que lleve los atributos correctos. Ideal para conectar con sus swatches Shopify existentes.

setMaterial al hacer clic
Ideal para botones de color o swatches. Aplica múltiples materiales simultáneamente en una sola acción.
<button
  viewer-3dvue="monViewer"
  viewer-3dvue-clic="setMaterial"
  viewer-3dvue-meshs-materials='{"1":"0n","3":"2b","5":"1c"}'
>
  Tema madera natural
</button>

// {"meshIndex": "materialId"}
// El índice 0 está reservado — empieza en 1
setMaterial en <select>
Conecte un select nativo de Shopify. El valor seleccionado se aplica a todas las mallas listadas en viewer-3dvue-mesh.
<select
  viewer-3dvue="monViewer"
  viewer-3dvue-change="setMaterial"
  viewer-3dvue-mesh="2,4"
>
  <option value="0n">Rojo</option>
  <option value="1a">Azul</option>
</select>

// viewer-3dvue-mesh="2,4"
// se aplica a la malla 2 Y a la malla 4
API JavaScript

Para casos de uso avanzados.

Cuando necesita control programático — carga dinámica de modelos, captura de imagen, exportación SVG. Todos los métodos verifican que el visor esté listo antes de ejecutarse.

querySelector Obtener la referencia del componente — punto de partida para toda la API JS
const viewer = document.querySelector('viewer-3dvue[name="monViewer"]');

// Todos los métodos verifican que el visor esté cargado (LOAD_COMPLETE)
// Si no está listo → aviso en consola, llamada ignorada
setMaterial() Aplicar materiales en un objeto — misma lógica que los atributos HTML, pero en JS
// En el objeto 0 (por defecto)
viewer.setMaterial({ "1": "0n", "3": "2b" });

// En un objeto específico (multi-segmento)
viewer.setMaterial({ "1": "1a" }, 1);
// setMaterial(materialList, objectIndex = 0)
loadModel() / addModel() / removeModel() Gestión dinámica de modelos — para productos con múltiples componentes
// Cargar un nuevo modelo (reemplaza el actual)
viewer.loadModel("AB01-CD02");

// Añadir un segmento al modelo existente
viewer.addModel("EF03");
viewer.addModel("EF03-GH04");

// Eliminar un segmento por su índice
viewer.removeModel(1);
// ⚠ No se puede eliminar el último segmento restante
captureToBase64() Capturar el renderizado actual como imagen base64 — útil para vistas previas de pedidos o compartir
viewer.captureToBase64();

viewer.addEventListener("onCaptureBase64Complete", (e) => {
  const { base64, error } = e.detail;
  if (error) { console.error(error); return; }
  // base64 = "data:image/png;base64,..."
  document.querySelector("#preview").src = base64;
});
resetCamera() · pauseRenderer() · startRenderer() Control de cámara y renderizado. pauseRenderer/startRenderer son llamados automáticamente por el IntersectionObserver.
// Devuelve la cámara a su posición inicial
viewer.resetCamera();

// Pausa manual (ahorra GPU)
viewer.pauseRenderer();
viewer.startRenderer();

// ℹ Estos métodos se gestionan automáticamente
// cuando el componente sale/entra en el viewport
API SVG — Personalización avanzada

Texto, logos, pruebas.
Todo en SVG.

La API SVG le permite añadir texto e imágenes directamente sobre el producto 3D a través de zonas de colocación definidas en el modelo. Se usa para productos personalizables — marcado, grabado de texto, carga de logo del cliente.

Método Descripción
addSVGText(text, opts) Añade texto a una zona de colocación. Opciones: fill, fontFamily, selectable
addSVGImage(source, opts) Añade una imagen (File o ArrayBuffer) a una zona de colocación. Sin copia via Transferable Objects.
setSVGElementParam(param, value, id) Modifica un parámetro de un elemento SVG existente. id=null apunta al elemento seleccionado.
exportSVG() Genera el archivo SVG del producto configurado — prueba lista para imprimir.
Ejemplo — carga de logo del cliente
// 1. Añadir texto sobre el producto
viewer.addSVGText("Mi texto", {
  fill: "#ffffff",
  fontFamily: "Arial",
  dropzone: "dropzone001",
  selectable: true
});

// 2. Cargar logo desde un input de archivo
const file = input.files[0];
await viewer.addSVGImage(file, {
  dropzone: "dropzone001"
});

// 3. Exportar la prueba SVG
viewer.exportSVG();
viewer.addEventListener("onSVGExportComplete", (e) => {
  const { path, error } = e.detail;
  // path = URL del archivo SVG generado
});
Documentación completa

Referencia API, atributos HTML, eventos, ejemplos Liquid de Shopify. Todo está documentado y se mantiene actualizado.

Ver documentación
Soporte técnico humano

Sin sistema de tickets automatizado. Habla directamente con Matthieu, el desarrollador que diseñó la API. Respuesta en 24 horas.

Reservar una llamada
Demo interactiva

Pruebe el configurador en condiciones reales antes de integrarlo. Vea exactamente lo que sus clientes verán en su tienda.

Ver demo
Integremos juntos

¿Listo para integrar?
Nosotros nos encargamos de los modelos 3D.

Usted gestiona el código en el lado Shopify, nosotros nos encargamos de todo lo demás — modelización, materiales, configuración. En 30 minutos, le mostramos lo que podemos hacer con su catálogo.

Script entregado al finalizar — listo para pegar
IDs de modelo y material documentados por proyecto
Soporte directo con el desarrollador de la API
Compatible con Shopify 2.0, OS 2.0, Dawn y todos los temas