Les modèles 3D : principes de base

L’éditeur fonctionne principalement avec le format gltf. Plus particulièrement la variante gltf-binary décrite ici.

Des modèles au format USD (.usdz) peuvent être fournis pour activer la réalité augmentée sur les appareils iOS mais ils ne peuvent pas être intégrés à la scène web3D pour le moment.

Exporter pour eCorpus

Blender est le logiciel idéal pour convertir des fichiers de la plupart des formats 3D (OBJ, *FBX, etc…) vers glTF car il dispose d’un plugin officiel maintenu par le consortium Khronos, responsable du format glTF.

Menu d'export

Le plugin glTF est installé par défaut avec blender. Assurez-vous d'utiliser une version récente de Blender, de préférence 4.0 ou supérieure.

Cliquez sur File > Export > glTF 2.0 pour ouvrir la fenêtre d'export

Vous pouvez choisir de n'exporter que la sélection courante ou toute la scène.

capture d'écran du menu d'import-export de blender
Le menu d'export de Blender

Options d'export

capture d'écran des options d'export au format glTF dans blender
Les options d'export

Retrouvez la documentation complète du plugin sur doc.blender.org.

Le format Binary (.glb) est à privilégier.

Il est aussi possible de choisir entre Z up et Y up dans le menu Transform pour l'orientation des axes de la scène.

Pensez à activer la compression, qui permet de réduire la taille du fichier de sortie: cela accélèrera les temps de chargement : Sur certains modèles, la taille compressée peut être jusqu'à deux fois plus petite que la taille originale.

Il n'est généralement pas utile de modifier les paramètres de compression.

Aller plus loin

Niveaux de détail

L’application peut enregistrer plusieurs niveaux de détail pour un objet et tenter d’en afficher le plus pertinent. Les niveaux supportés sont :

Thumb
Low
Medium
High
Highest

La selection se fait en fonction de la capacité maxTextureSize du moteur de rendu

Voir la doc : WebGLRenderer.capabilities.maxTextureSize

En fonction de cette valeur, la qualité idéale sera :

Il est conseillé de fournir des textures de taille correspondante ou inférieure avec les modèles.

Shaders

En pratique, les modèles sont affublés d’un MeshStandardMaterial. Les bénéfices et limites en sont décrites dans la documentation THREEJS.