Accueil
Services
Configurateur 3D produit Visualisation Web 3D Modélisation 3D de catalogue Packshot 3D Photoréaliste Réalité Augmentée
Secteurs
Mobilier Textile & Mode Bijoux et Luxe Objets publicitaires Maillot de sport
Intégrations
Shopify WooCommerce PrestaShop WordPress
Ressources
FAQ Documentation Valeurs Contact
Demandez un RDV
Documentation technique

Bonnes pratiques
3DVue

Guides techniques pour préparer vos fichiers 3D, vos textures, vos BAT et intégrer le configurateur sur votre site. Mis à jour en avril 2026.

Blender / GLTF
UV Mapping
Textures PBR
BAT SVG
Web Component
01

Préparer vos fichiers 3D

Formats acceptés, règles de conversion et bonnes pratiques Blender pour une intégration sans friction.

Formats acceptés

La plateforme 3DVue accepte plusieurs formats 3D. Le GLTF est le format recommandé — il offre le meilleur rapport qualité/poids pour le rendu web temps réel.

.FBX
Compatible, mais moins optimisé que GLTF pour le web. Utiliser si GLTF n'est pas disponible depuis votre logiciel.
.DAE (Collada)
Utile comme format intermédiaire lors de la conversion depuis SolidWorks ou autres logiciels CAO via FreeCAD.
Photos / Plans
Si vous n'avez aucun fichier 3D — photos de face, côté, dessus et dessous. On part de zéro.

Conversion depuis SolidWorks — STEP / STL → GLTF

Les fichiers issus de logiciels CAO (SolidWorks, Fusion 360, CATIA) sont généralement en formats .STEP, .STP ou .STL. Ils doivent être convertis avant intégration.

Méthode recommandée : FreeCAD — gratuit, open source, excellent pour la conversion CAO → GLTF sans perte de géométrie.
FreeCAD — procédure CAO → GLTF
1. Ouvrir FreeCAD
2. Importer le fichier STEP/STL
   Ctrl + I → sélectionner votre fichier .stp ou .stl

3. Exporter en GLTF ou DAE
   Ctrl + E → choisir format DAE ou GLTF

Convertisseur en ligne (alternative rapide) :
   https://imagetostl.com/fr/convertir/un-fichier/stp/en/glb
Les fichiers CAO industriels contiennent souvent des millions de faces — beaucoup trop pour un rendu web temps réel. Une retopologie est souvent nécessaire après conversion. 3DVue s'en charge dans le cadre du projet de modélisation.

Export depuis Blender

Si vous travaillez directement dans Blender, voici les réglages d'export GLTF recommandés pour la plateforme 3DVue. Utiliser la compression Draco réduit significativement le poids du fichier.

Blender — réglages export GLTF Fichier > Exporter > glTF 2.0
Format :          glTF Binary (.glb)  ← embarque tout dans un seul fichier
Compression :     Draco activé        ← réduit le poids de 60 à 80%
Textures :        Include → cocher
Matériaux :       Export materials → cocher
Transformations : Apply → cocher      ← obligatoire, voir section Transformations

Nommage des collections Blender

Des scripts automatisent l'export des GLTF et des UV maps. Pour qu'ils fonctionnent correctement, les collections Blender doivent respecter une structure précise.

Aucune majuscule, aucun accent, aucun espace dans les noms de collections. Les scripts ne peuvent pas fonctionner si cette règle n'est pas respectée.
Structure des collections
Collection
  └── nom-du-produit          ← sans accent ni espace
        ├── modelisation         ← tous les objets 3D
        └── gltf                 ← fichiers d'export générés

Exemples corrects :
  nom-du-produit : fauteuil-butterfly   ✓
  nom-du-produit : table-tolix-aExemples incorrects :
  nom-du-produit : Fauteuil Butterfly   ✗ majuscule + espace
  nom-du-produit : siège-étagère        ✗ accent

Transformations & échelle

  • Toujours appliquer les transformations Ctrl + A → Toutes les transformations avant export — sinon les UV sont incorrects
  • Travailler à l'échelle 1 (comme dans le vrai monde en mètres) — évite les erreurs d'échelle dans le configurateur
  • Si un objet ne touche pas le sol (ex: pendentif, luminaire suspendu), ajouter un plan invisible nommé RA de taille 0.0001m en position 0,0,0 pour la réalité augmentée
02

UV Mapping

Le dépliage UV conditionne la qualité du rendu des textures. Un UV mal fait crée des distorsions visibles — le motif s'étire ou se compresse sur certaines faces.

Addons Blender recommandés

Ces addons sont utilisés systématiquement par l'équipe 3DVue pour garantir des UV de qualité sur tous les projets.

AddonUsage principal
UV Toolkit Checker map pour visualiser les distorsions UV — indispensable pour vérifier la qualité du dépliage avant export
Texel Density Assure une cohérence de densité entre tous les objets d'un même projet. Si un bois apparaît dans plusieurs objets, il doit toujours avoir la même "taille" apparente
UVPackmaster Optimise le placement des îles UV sur la carte, gère l'orientation selon le sens des objets (utile pour le bois, les tissus à motifs directionnels)
Mio3 Rectifie les UV déformés, permet de superposer des UV similaires (gain de place sur la carte UV)

Cohérence du Texel Density

Le texel density définit combien de pixels de texture couvrent une surface réelle donnée. Si deux objets d'un même client ont des texel densities différents, une texture bois aura une taille différente sur chaque objet — ce qui n'est pas réaliste.

Règle : définir une valeur de texel density commune par projet au début de la modélisation, et l'appliquer sur tous les objets via l'addon Texel Density. Les matières (bois, tissu, métal) auront toujours la même échelle apparente d'un objet à l'autre.

Privilegier les dépliages UV basés sur des coutures (seams) avec la méthode Conformal — sauf pour les objets avec une couleur uniforme (uni) qui n'ont pas besoin d'un dépliage précis.

UV pour les BAT SVG

Quand le configurateur utilise un BAT SVG (personnalisation avec upload de logo ou texte), des règles supplémentaires s'appliquent au dépliage UV.

  • Tous les UV doivent tenir sur une seule carte UV
  • Exporter la carte UV en 4096×4096 px
  • Le GLTF doit correspondre exactement à la carte UV exportée
  • Un script Blender automatise l'export du GLTF et de la UV map — les collections doivent être correctement nommées pour qu'il fonctionne
  • Si besoin, peindre sur la carte UV pour aider la création du fichier Illustrator (alignement de motifs)
03

Textures PBR

Nommage, formats et spécifications pour les fichiers de texture compatibles avec la plateforme 3DVue.

Nommage des fichiers de texture

Chaque couche PBR correspond à un fichier de texture avec un nom standardisé. La plateforme identifie le rôle de chaque texture par son nom.

Nom de fichierRôleSupport
albedo Couleur de base de la matière (aussi appelé diffuse) ✅ Complet
roughness Niveau de brillance — blanc = mat, noir = brillant ✅ Complet
metallic Propriétés métalliques — reflets environnement ✅ Complet
normal Relief en trompe-l'œil — simule les bosses et creux sans polygones ✅ Complet
emissive Zones lumineuses (LED, écrans, parties rétroéclairées) ✅ Complet
occlusion Ombres de contact entre surfaces (ambient occlusion) ✅ Complet
bump Alternative à la normal map — non pris en charge si une normal map est déjà présente ⚠️ Ignoré si normal présent
alpha Transparence — à tester selon le cas d'usage, non compatible RA ⚠️ Non compatible RA

Formats & résolution

  • Format carré obligatoire — 1024×1024 ou 2048×2048 (maximum 2K)
  • Format de fichier : PNG (recommandé pour transparence et qualité) ou JPEG (plus léger)
  • Une normal map trop lourde peut être compressée sans perte visible via imagecompressor.com
Les textures non carrées ou au-delà de 2K peuvent créer des problèmes d'affichage ou de performance sur mobile. Toujours exporter en format carré.
04

Créer un BAT SVG

Guide Illustrator pour les projets avec personnalisation — upload de logo, texte gravé, zones de marquage. Le BAT SVG est le fichier de production généré par le configurateur.

Règles générales

  • Format carré obligatoire, résolution 4K (4096×4096 px)
  • Nommage : BAT-nomdumodele-dimension_albedo.svg
  • Aucun accent, aucun espace dans le nom du fichier
  • Tous les éléments éditables doivent être vectorisés dans le SVG — aucun élément raster
Convention de nommage
Format :  BAT-nomdumodele-dimension_albedo.svg

Exemples :
  BAT-maillotmatch-tailleL_albedo.svgBAT-gobelet-25cl_albedo.svgBAT-maillot match taille L albedo.svg  ✗ espaces interdits
  BAT-maillotmatch-tailléL_albedo.svg    ✗ accent interdit

Structure des calques Illustrator

Les calques Illustrator doivent être organisés selon une structure précise pour que le configurateur puisse identifier les zones éditables et les zones de référence.

Nom du calqueRôleToucher ?
masqué Calque de travail — éléments de test ou mis de côté sans suppression ✅ Libre
non vecto Textes non vectorisés gardés pour réutilisation — non exportés ✅ Libre
gabarit Limites du modèle 3D — guide de placement, ne pas modifier 🚫 Ne pas toucher
logo Tous les logos renommés correctement ✅ Libre
design, design-1, design-2 Éléments graphiques de chaque variante de design ✅ Libre
présentation Template commun à tous les designs — ne pas modifier 🚫 Ne pas toucher

Export SVG depuis Illustrator

  • Vectoriser tous les éléments éditables avant export — Maj + Ctrl + O
  • Nommer le fichier exporté avec la convention nomdudesign_albedo.svg
  • Aucun élément raster dans le fichier exporté — tout doit être vectoriel
  • Vérifier que les calques gabarit et présentation sont masqués à l'export
Raccourcis Illustrator utiles :
Maj + Ctrl + O — vectoriser la forme sélectionnée
Ctrl + C — copier
Ctrl + Maj + V — coller au même emplacement
05

Script de renommage Illustrator

Script JSX pour renommer automatiquement les calques sélectionnés au format color_XXX. Gain de temps considérable sur les projets avec de nombreuses zones éditables.

Installation

Installation du script
1. Copier le code ci-dessous dans un fichier texte
2. Renommer le fichier en RenameColor.jsx
3. Copier dans le dossier scripts Illustrator :
   C:\Program Files\Adobe\Adobe Illustrator 2026\Presets\fr_FR\Scripts\
4. Exécuter depuis Illustrator :
   Fichier → Script → RenameColor

Code du script

RenameColor.jsx Adobe Illustrator
// Script Rename Color — Ultra Rapide
// Renomme tous les objets sélectionnés en "color_XXX"

(function() {
  if (app.documents.length === 0) {
    alert("Veuillez ouvrir un document Illustrator.");
    return;
  }

  var doc       = app.activeDocument;
  var selection = doc.selection;

  if (selection.length === 0) {
    alert("Veuillez sélectionner au moins un objet à renommer.");
    return;
  }

  var number = prompt("Numéro (ex: 001, 002, etc.) :", "001");

  if (number === null || number === "") { return; }

  var finalName = "color" + number;

  for (var i = 0; i < selection.length; i++) {
    selection[i].name = finalName;
  }

  alert(selection.length + " objet(s) renommé(s) en : " + finalName);
})();
Mode d'emploi : sélectionner un ou plusieurs calques dans Illustrator, lancer le script via Fichier → Script → RenameColor, entrer le numéro (001, 002…) et valider. Tous les objets sélectionnés sont renommés en color001 simultanement.
06

Intégrer le viewer 3DVue

Le viewer 3DVue est un Web Component natif. Il fonctionne dans tout environnement HTML — Shopify, WooCommerce, PrestaShop, WordPress, ou site custom.

Inclure le script

Ajoutez le script une seule fois dans votre <head> ou avant </body>. Une inclusion suffit pour toutes les pages de votre site.

HTML — inclusion du script CDN jsDelivr
<script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script>

Déclarer le composant

Placez la balise <viewer-3dvue> là où vous souhaitez afficher le viewer. Deux attributs sont requis : name (identifiant unique sur la page) et src (URL de votre configurateur, fournie par 3DVue à la livraison).

HTML — composant viewer
<!-- Attributs requis -->
<viewer-3dvue
  name="monViewer"
  src="https://app.3dvue.fr/view?p=AB01-CD02"
></viewer-3dvue>

<!-- Avec debug activé (logs console) -->
<viewer-3dvue
  name="monViewer"
  src="https://app.3dvue.fr/view?p=AB01-CD02"
  debug
></viewer-3dvue>
L'URL du paramètre src est spécifique à chaque projet — elle encode les objets et matières du configurateur. Elle vous est transmise par 3DVue à la livraison.

Contrôle sans JavaScript

Le composant écoute automatiquement les événements click et change sur tout élément portant les attributs ci-dessous. Aucun JavaScript à écrire.

AttributValeurUsage
viewer-3dvue Nom du viewer ciblé Obligatoire sur tout élément déclencheur
viewer-3dvue-clic setMaterial Déclenche un changement de matière au clic
viewer-3dvue-change setMaterial Déclenche un changement à la sélection d'un <select>
viewer-3dvue-meshs-materials JSON {"indexMesh":"idMatiere"} Matières à appliquer (plusieurs meshes possibles)
viewer-3dvue-mesh "1,2,3" Index de meshes ciblés pour un <select>
Exemples — bouton et select
<!-- Bouton qui change plusieurs matières au clic -->
<button
  viewer-3dvue="monViewer"
  viewer-3dvue-clic="setMaterial"
  viewer-3dvue-meshs-materials='{"1":"0n","3":"2b"}'
>
  Coloris Bleu nuit
</button>

<!-- Select qui applique la valeur choisie -->
<select
  viewer-3dvue="monViewer"
  viewer-3dvue-change="setMaterial"
  viewer-3dvue-mesh="2,4"
>
  <option value="0n">Rouge</option>
  <option value="1a">Bleu</option>
</select>

API JavaScript

Pour les cas avancés — chargement dynamique, capture d'image, export SVG. Récupérez la référence du composant via querySelector.

MéthodeDescription
setMaterial(materials, index)Applique des matières sur les meshes d'un objet
loadModel(id)Remplace le modèle courant
addModel(id)Ajoute un objet à la scène
removeModel(index)Supprime un objet par son index
resetCamera()Remet la caméra en position initiale
pauseRenderer() / startRenderer()Contrôle manuel du rendu (géré automatiquement par IntersectionObserver)
captureToBase64()Capture le rendu en image base64 → événement onCaptureBase64Complete
exportSVG()Génère le BAT SVG du produit → événement onSVGExportComplete
addSVGText(text, opts)Ajoute un texte sur une zone éditable du produit
addSVGImage(source, opts)Ajoute une image (File ou ArrayBuffer) sur une zone éditable
loadFonts(fonts)Précharge des polices Google Fonts ou .woff2 personnalisées
JavaScript — exemples API
// Récupérer la référence du composant
const viewer = document.querySelector('viewer-3dvue[name="monViewer"]');

// Changer les matières
viewer.setMaterial({ "1": "0n", "3": "2b" });

// Capturer le rendu courant
viewer.captureToBase64();
viewer.addEventListener("onCaptureBase64Complete", (e) => {
  const { base64, error } = e.detail;
  if (!error) document.querySelector("#preview").src = base64;
});
Guides d'intégration par plateforme : Shopify, WooCommerce, PrestaShop, WordPress.
Une question sur cette documentation ?

Matthieu répond directement — pas de ticketing, pas de délai. Si quelque chose n'est pas clair ou si votre cas n'est pas couvert ici, prenez un RDV.

Demander un RDV Voir la FAQ