glTF 2.0

Référence

Catégorie:

Import-Export

Menu:

File ‣ Import/Export ‣ glTF 2.0 (.glb, .gltf)

Utilisation

glTF™ (GL Transmission Format) est utilisé pour la transmission et le chargement de modèles 3D dans des applications Web et natives. glTF réduit la taille des modèles 3D et le traitement d’exécution nécessaire pour décompresser et rendre ces modèles. Ce format est couramment utilisé sur le Web et prend en charge divers moteurs 3D tels que Unity3D, Unreal Engine 4 et Godot.

Cet importateur/exportateur prend en charge les fonctionnalités glTF 2.0 suivantes :

  • Meshes

  • Matériaux (Principled BSDF) et Shadeless (Unlit)

  • Textures

  • Cameras

  • Lumières ponctuelles (point, spot et directionnelles)

  • Extensions (listées ci-dessous)

  • Extras (propriétés personnalisées)

  • Animation (image clé, clé de forme et skinning)

Meshes

La structure interne de glTF imite les tampons de mémoire couramment utilisés par les puces graphiques lors du rendu en temps réel, de sorte que les actifs peuvent être livrés aux clients de bureau, Web ou mobiles et être affichés rapidement avec un traitement minimal. En conséquence, les quads et les n-gons sont automatiquement convertis en triangles lors de l’exportation vers glTF. Les UV discontinus et les arêtes plates peuvent entraîner un nombre de sommets modérément plus élevé dans glTF par rapport à Blender, car ces sommets sont séparés pour l’exportation. De même, les courbes et autres données non maillées ne sont pas conservées et doivent être converties en maillages avant l’exportation.

Materials

Le système de matériaux de base dans glTF prend en charge un flux de travail PBR métal/rugueux avec les canaux d’informations suivants :

  • Base Color

  • Metallic

  • Roughness

  • Baked Ambient Occlusion

  • Normal Map (tangent space, +Y up)

  • Emissive

Certaines propriétés ou types de matériaux supplémentaires peuvent être exprimés à l’aide d’extensions glTF. La liste complète se trouve dans la partie Extensions de cette documentation.

../../_images/addons_import-export_scene-gltf2_material-channels.jpg

Un exemple des différentes cartes d’images disponibles dans le format de base glTF 2.0. Il s’agit du modèle d’échantillon d’une bouteille d’eau présenté à côté de tranches (slices) de ses différentes cartes d’images.

Matériaux importés

Le système de matériaux glTF est différent des propres matériaux de Blender. Lorsqu’un fichier glTF est importé, le module complémentaire construira un ensemble de nœuds Blender pour répliquer au plus près chaque matériau glTF.

L’importateur prend en charge Metal/Rough PBR (core glTF), Spec/Gloss PBR (KHR_materials_pbrSpecularGlossiness) et certaines extensions de matériaux. La liste complète se trouve dans la partie Extensions de cette documentation.

Astuce

L’examen du résultat du processus d’importation des matériaux est un bon moyen de voir des exemples des types de nœuds de matériaux et des paramètres qui peuvent être exportés vers glTF.

Matériaux exportés

L’exportateur prend en charge les matériaux Metal/Rough PBR (core glTF) et Shadeless (KHR_materials_unlit). Il construira un matériau glTF basé sur les nœuds qu’il reconnaît dans le matériau Blender. Le processus d’exportation de matériau gère les paramètres décrits ci-dessous.

Note

Lorsque des textures d’image sont utilisées par des matériaux, glTF exige que les images soient au format PNG ou JPEG. Le module complémentaire convertira automatiquement les images d’autres formats, augmentant ainsi le temps d’exportation.

Base Color

La couleur de base glTF est déterminée en recherchant une entrée de couleur de base sur un nœud Principled BSDF. Si l’entrée n’est pas connectée, la couleur par défaut de l’entrée (le champ de couleur en regard du socket non connecté) est utilisée comme couleur de base pour le matériau glTF.

../../_images/addons_import-export_scene-gltf2_material-base-color-solid-green.png

Une couleur de base unie peut être spécifiée directement sur le nœud.

Si un nœud de texture d’image est connecté à l’entrée Base Color, cette image sera utilisée comme couleur de base glTF.

../../_images/addons_import-export_scene-gltf2_material-base-color-image-hookup.png

Une image est utilisée comme couleur de base glTF.

Metallic et Roughness

Ces valeurs sont lues à partir du nœud Principled BSDF. Si ces deux entrées ne sont pas connectées, le nœud affichera des curseurs pour contrôler leurs valeurs respectives entre 0,0 et 1,0, et ces valeurs seront copiées dans le glTF.

Lors de l’utilisation d’une image, glTF s’attend à ce que les valeurs métalliques soient codées dans le canal bleu (B) et la rugosité à coder dans le canal vert (G) de la même image. Si les images sont connectées au nœud Blender d’une manière qui ne suit pas cette convention, le module complémentaire peut tenter d’adapter l’image à la forme correcte lors de l’exportation (avec un temps d’exportation plus long).

Dans l’arborescence des nœuds Blender, il est recommandé d’utiliser un nœud RVB séparé pour séparer les canaux d’un nœud Image Texture, et connecter le canal vert (G) à Roughness et bleu (B) à Metallic. L’exportateur glTF reconnaîtra cet arrangement comme correspondant à la norme glTF, ce qui lui permettra de simplement copier la texture de l’image dans le fichier glTF lors de l’exportation.

Le nœud Image Texture pour cela doit avoir son Color Space défini sur Non-Color.

../../_images/addons_import-export_scene-gltf2_material-metal-rough.png

Une image metallic/roughness connectée de manière cohérente avec la norme glTF, lui permettant d’être utilisée textuellement dans un fichier glTF exporté.

Baked Ambient Occlusion

glTF est capable de stocker une carte d’occlusion ambiante pré-calculée. Actuellement, il n’y a aucun arrangement de nœuds qui oblige Blender à utiliser une telle carte exactement de la même manière que prévu dans glTF. Cependant, si l’exportateur trouve un groupe de nœuds personnalisé sous le nom de glTF Material Output et trouve une entrée nommée Occlusion sur ce groupe de nœuds, il recherchera une Image Texture qui y est attachée à utiliser comme carte d’occlusion dans glTF. L’effet n’a pas besoin d’être affiché dans Blender, car Blender a d’autres moyens de montrer l’occlusion ambiante, mais cette méthode permettra à l’exportateur d’écrire une image d’occlusion dans le glTF. Cela peut être utile pour les visionneuses glTF en temps réel, en particulier sur les plates-formes où il n’y a peut-être pas d’énergie disponible pour calculer de telles choses au moment du rendu.

../../_images/addons_import-export_scene-gltf2_material-occlusion-only.png

Une carte d’occlusion ambiante pré-calculée, connectée à un nœud qui ne rendra pas mais exportera vers glTF.

Astuce

The easiest way to create the custom node group is to import an existing glTF model that contains an occlusion map, such as the water bottle or another existing model. A manually created custom node group can also be used.

glTF stocke l’occlusion dans le canal rouge (R), ce qui lui permet de partager éventuellement la même image avec la rugosité et les canaux métalliques.

../../_images/addons_import-export_scene-gltf2_material-orm-hookup.png

Cette combinaison de nœuds imite la façon dont glTF regroupe l’occlusion, la rugosité et les valeurs métalliques dans une seule image.

Astuce

Le moteur de rendu Cycles dispose d’un panneau Bake qui peut être utilisé pour créer des cartes d’occlusion ambiante. L’image résultante peut être enregistrée et connectée directement au nœud glTF Material Output.

Normal Map

Pour utiliser une texture normale dans glTF, connectez la sortie couleur d’un nœud Image Texture à l’entrée couleur d’un nœud Normal Map, puis connectez la sortie Normal de Normal Map à l’entrée Normal du nœud Principled BSDF. Le nœud Image Texture pour cela doit avoir sa propriété Color Space définie sur Non-Color.

Le nœud Normal Map doit rester sur sa propriété par défaut Tangent Space car c’est le seul type de normal map actuellement pris en charge par glTF. La force de la carte normale peut être ajustée sur ce nœud. L’exportateur n’exporte pas ces nœuds directement, mais les utilisera pour localiser l’image correcte et copiera le paramètre de force dans le glTF.

../../_images/addons_import-export_scene-gltf2_material-normal.png

Une image de carte normale connectée de telle sorte que l’exportateur la trouve et la copie dans le fichier glTF.

Astuce

Le moteur de rendu Cycles dispose d’un panneau Bake qui peut être utilisé pour créer des textures normales d’espace tangent à partir de presque n’importe quel autre arrangement de nœuds vectoriels normaux. Réglez le type Bake sur Normal. Conservez les paramètres d’espace par défaut (espace : Tangent, R : + X, G : + Y, B : + Z) lorsque vous utilisez ce panneau Bake pour glTF. L’image pré-calculée résultante peut être enregistrée et connectée à un nouveau matériau à l’aide du nœud Normal Map comme décrit ci-dessus, ce qui lui permet de s’exporter correctement.

Voir : Cycles Render Baking

Emissive

Un nœud Image Texture peut être connecté à l’entrée Emission sur le nœud Principled BSDF pour inclure une carte émissive avec le matériau glTF. Alternativement, le nœud Image Texture peut être connecté à un nœud de Emission shader, et éventuellement combiné avec des propriétés d’un nœud Principled BSDF via un nœud Add Shader.

Si la texture émissive est seule dans le matériau, il est préférable de définir la Base Color par défaut sur le noir et la Roughness par défaut sur 1,0. Cela minimise l’influence des autres canaux s’ils ne sont pas nécessaires.

../../_images/addons_import-export_scene-gltf2_material-emissive.png

Cet arrangement est pris en charge pour la compatibilité ascendante. Il est plus simple d’utiliser directement le nœud Principled BSDF.

Si un composant de emissiveFactor est > 1.0, l’extension KHR_materials_emissive_strength sera utilisée.

Clearcoat (vernis)

Lorsque l’entrée Clearcoat sur le nœud Principled BSDF a une valeur par défaut différente de zéro ou un nœud Image Texture connecté, l’extension glTF KHR_materials_clearcoat sera incluse dans l’exportation. Cette extension comprendra également une valeur ou une Image Texture de l’entrée Clearcoat Roughness si disponible.

Si des Image Textures sont utilisées, glTF exige que les valeurs de clearcoat soient écrites dans le canal rouge (R) et la Clearcoat Roughness dans le canal vert (G). Si des images monochromes sont connectées, l’exportateur les remappera sur ces canaux de couleur.

L’entrée Clearcoat Normal accepte les mêmes types d’entrées que l’entrée Normal de base, en particulier une carte normale d’espace tangent avec +Y vers le haut et une force définie par l’utilisateur. Cette entrée peut réutiliser la même texture normale que celle utilisée par le matériau de base, ou peut se voir attribuer sa propre texture normale, ou peut être laissée déconnectée pour un revêtement lisse.

Tous les nœuds de texture d’image utilisés pour l’ombrage clearcoat doivent avoir leur espace colorimétrique défini sur Non-Color.

../../_images/addons_import-export_scene-gltf2_material-clearcoat.png

Un exemple d’application de clearcoat complexe qui s’exportera correctement vers glTF. Un revêtement lisse beaucoup plus simple peut être appliqué à partir du seul nœud Principled BSDF.

Sheen

When the Velvet BSDF node is used in addition to Principled BSDF node, the KHR_materials_sheen glTF extension will be included in the export. The Sheen Color will be exported from Color socket of Velvet node. Sheen Roughness will be exported from Sigma socket.

Si une texture Sheen Rougness est utilisée, glTF exige que les valeurs soient écrites sur le canal alpha (A).

../../_images/addons_import-export_scene-gltf2_material-sheen.png

Astuce

Velvet BSDF node is only available on Cycles render engine. You may have to temporary switch to Cycles to add this node, and get back to Eevee.

Note

Because the node tree is adding 2 Shaders (Principled and Sheen), the resulting shader is not fully energy conservative. You may find some difference between Blender render, and glTF render. Sheen models are not fully compatible between Blender and glTF. This trick about adding Velvet Shader is the most accurate approximation (better that using Sheen Principled sockets).

Specular

When the Specular or Specular Tint input of Principled BSDF node have a non default value or Image Texture node connected, the KHR_materials_specular glTF extension will be included in the export.

Note

Specular models are not fully compatible between Blender and glTF. By default, Blender data are converted to glTF at export, with a possible loss of information. Some conversion are also performed at import, will a possible loss of information too.

At import, a custom node group is created, to store original Specular data, not converted.

../../_images/addons_import-export_scene-gltf2_material_specular-custom-node.png

At export, by default, Specular data are converted from Principled BSDF node.

You can export original Specular data, enabling the option at export. If enabled, Principled Specular data are ignored, only data from custom node are used.

../../_images/addons_import-export_scene-gltf2_material_specular-export-option.png

Astuce

Si vous activez les modules complémentaires Shader Editor dans les Préférences, vous pourrez ajouter ce groupe de nœuds personnalisés à partir du Menu: Add > Output > glTF Material Output.

../../_images/addons_import-export_scene-gltf2_addon-preferences-shader.png

Transmission

Lorsque l’entrée Transmission sur le nœud Principled BSDF a une valeur par défaut différente de zéro ou un nœud Image Texture connecté, l’extension glTF KHR_materials_transmission sera incluse dans l’exportation. Lorsqu’une texture est utilisée, glTF enregistre les valeurs dans le canal rouge (R). Color Space doit être défini sur Non-Color.

Transmission est différent du mélange alpha, car la transmission permet des réflexions spéculaires à pleine puissance. Dans glTF, le mélange alpha est destiné à représenter des matériaux physiques qui sont partiellement absents de la géométrie spécifiée, tels que la gaze médicale. La transmission est destinée à représenter des matériaux physiques qui sont solides mais qui permettent à la lumière réfléchie de manière non spéculaire de se transmettre à travers le matériau, comme le verre.

glTF does not offer a separate « Transmission Roughness », but the material’s base roughness can be used to blur the transmission, like frosted glass.

Astuce

En général, le mode de blend alpha d’un matériau transmissif doit rester “Opaque”, le paramètre par défaut, à moins que le matériau ne couvre que partiellement la géométrie spécifiée.

Note

Dans les moteurs en temps réel où la transmission est prise en charge, diverses limitations techniques du moteur peuvent déterminer quelles parties de la scène sont visibles à travers la surface de transmission. En particulier, les matériaux transmissifs peuvent ne pas être visibles derrière d’autres matériaux transmissifs. Ces limitations affectent la transmission physique, mais pas les matériaux non transmissifs mélangés en alpha.

Note

Si vous souhaitez activer la réfraction sur votre modèle, KHR_materials_transmission doit également être utilisé en plus de KHR_materials_volume. Voir la partie dédiée Volume de la documentation.

Avertissement

La transmission est complexe à implémenter pour les moteurs de rendu en temps réel, et la prise en charge de l’extension glTF KHR_materials_transmission n’est pas encore répandue.

IOR

À l’importation, il y a deux situations différentes :

  • si KHR_materials_ior n’est pas défini, la valeur IOR du nœud Principled BSDF est définie sur 1,5, c’est-à-dire la valeur par défaut glTF de IOR.

  • S’il est défini, le KHR_materials_ior est utilisé pour définir la valeur IOR de Principled BSDF.

Lors de l’exportation, IOR est inclus dans l’exportation uniquement si l’une de ces extensions est également utilisée :

  • KHR_materials_transmission

  • KHR_materials_volume

  • KHR_materials_specular

L’IOR de 1,5 n’est pas inclus dans l’exportation, car il s’agit de la valeur IOR glTF par défaut.

Volume

Le volume peut être exporté à l’aide d’un nœud Volume Absorption, lié à la prise Volume du nœud Output. Les données seront exportées à l’aide de l’extension KHR_materials_volume.

  • Pour que le volume soit exporté, une certaine transmission doit être définie sur le nœud Principled BSDF.

  • Le nœud Color of Volume Absorption est utilisé comme couleur d’atténuation du glTF. Aucune texture n’est autorisée pour cette propriété.

  • Le nœud Density of Volume Absorption est utilisé comme inverse de la distance d’atténuation du glTF.

  • Thickess peut être branché sur la prise Thickess du nœud de groupe personnalisé glTF Material Output.

  • Si une texture est utilisée pour l’épaisseur, elle doit être branchée sur le canal vert (G) de l’image.

../../_images/addons_import-export_scene-gltf2_material-volume.png

glTF Variants

Note

Pour une expérience complète des Variants, vous devez activer l’interface utilisateur dans les préférences des modules complémentaires

../../_images/addons_import-export_scene-gltf2_addon-preferences-variant.png

Il existe deux emplacements pour gérer les glTF Variants dans Blender

  • En vue 3D, sur l’onglet glTF Variants

  • Pour les paramètres avancés, dans les propriétés du matériau de maillage (voir Advanced glTF Variant checks)

Le concept principal à comprendre pour l’utilisation des Variants est que chaque slot de matériau sera utilisé comme équivalent d’une primitive glTF.

Changement de glTF Variants

Après avoir importé un fichier glTF comprenant l’extension KHR_materials_variants, toutes les variants peuvent être affichés.

../../_images/addons_import-export_scene-gltf2_material_variants-switch.png

Vous pouvez changer de Variant en sélectionnant le variant que vous souhaitez afficher, puis en cliquant sur Display Variant.

Vous pouvez passer aux matériaux par défaut (lorsqu’aucun Variant n’est utilisé), en cliquant sur Reset to default.

Création de Variants glTF

Vous pouvez ajouter un nouveau Variant en cliquant sur le + à droite de la liste des Variants. Ensuite, vous pouvez modifier le nom en double-cliquant.

Après avoir modifié les matériaux dans les slots de matériaux, vous pouvez affecter les matériaux actuels au Variant actif à l’aide de l’option Assign to Variant.

Vous pouvez également définir des matériaux par défaut à l’aide de Assign as Original. Ces matériaux seront exportés en tant que matériaux par défaut dans glTF. Ce sont des matériaux qui seront affichés par n’importe quel viewer qui ne gère pas l’extension KHR_materials_variants.

Vérifications avancées des Variants glTF

Si vous souhaitez vérifier primitive par primitive, quelles sont les Variants utilisées, vous pouvez accéder aux Mesh Material Properties.

../../_images/addons_import-export_scene-gltf2_material_variants-detail.png

L’onglet glTF Material Variants fait référence au slot du matériau actif et au matériau utilisé par cet emplacement. Vous pouvez voir toutes les variantes qui utilisent ce matériau pour le Slot/Primitive donné.

Vous pouvez également attribuer un matériau à des Variants à partir de cet onglet, mais la recommandation est de l’exécuter à partir de l’onglet Vue 3D.

Double-Sided / Backface Culling

For materials where only the front faces will be visible, turn on Backface Culling in the Settings panel of an Eevee material. When using other engines (Cycles, Workbench) you can temporarily switch to Eevee to configure this setting, then switch back.

Ne cochez pas cette case pour les matériaux double-face.

../../_images/addons_import-export_scene-gltf2_material-backface-culling.png

L’inverse de ce paramètre contrôle l’indicateur DoubleSided de glTF.

Blend Modes

The Base Color input can optionally supply alpha values. How these values are treated by glTF depends on the selected blend mode.

With the Eevee render engine selected, each material has a Blend Mode on the material settings panel. Use this setting to define how alpha values from the Base Color channel are treated in glTF. Three settings are supported by glTF:

Opaque

Alpha values are ignored.

Alpha Blend

Lower alpha values cause blending with background objects.

Alpha Clip

Alpha values below the Clip Threshold setting will cause portions of the material to not be rendered at all. Everything else is rendered as opaque.

../../_images/addons_import-export_scene-gltf2_material-alpha-blend.png

With the Eevee engine selected, a material’s blend modes are configurable.

Note

Be aware that transparency (or Alpha Blend mode) is complex for real-time engines to render, and may behave in unexpected ways after export. Where possible, use Alpha Clip mode instead, or place Opaque polygons behind only a single layer of Alpha Blend polygons.

UV Mapping

Le contrôle de la sélection et des transformations de la map UV est disponible en connectant un nœud UV Map et un nœud Mapping à n’importe quel nœud Image Texture.

Les paramètres du nœud Mapping sont exportés à l’aide d’une extension glTF nommée KHR_texture_transform. Il y a un sélecteur de type de mappage en haut. Point est le type recommandé pour l’exportation. Texture et Vector sont également pris en charge. Les décalages pris en charge sont :

  • Location - X et Y

  • Rotation - Z uniquement

  • Scale - X et Y

Pour le type Texture, Scale X et Y doivent être égales (mise à l’échelle uniforme).

../../_images/addons_import-export_scene-gltf2_material-mapping.png

Un choix délibéré de cartographie UV.

Astuce

Ces nœuds sont facultatifs. Tous les lecteurs glTF ne prennent pas en charge plusieurs cartes UV ou transformations de texture.

Factors

Tous les nœuds de texture d’image peuvent éventuellement être multipliés par une couleur constante ou un scalaire. Ceux-ci seront écrits sous forme de facteurs dans le fichier glTF, qui sont des nombres multipliés par les textures d’image spécifiées. Celles-ci ne sont pas courantes.

  • Utiliser le nœud Math (multiplier) pour les facteurs scalaires. Utiliser la deuxième valeur comme facteur

  • Utiliser le nœud Mix (couleur / multiplication) pour les facteurs de couleur. Régler le facteur sur 1 et utilisez Color2 (B) comme facteurs

../../_images/addons_import-export_scene-gltf2_material-factors.png

Exemple

Un seul matériau peut utiliser tout ce qui précède en même temps, si on le souhaite. Cette figure montre une structure de nœud typique lorsque plusieurs des options ci-dessus sont appliquées à la fois :

../../_images/addons_import-export_scene-gltf2_material-principled.png

Un matériau Principled BSDF avec une texture émissive.

Exportation d’un matériau sans ombre (non éclairé)

Pour exporter un matériau non éclairé, mélangez-le dans un rayon de caméra et évitez d’utiliser le nœud Principled BSDF.

../../_images/addons_import-export_scene-gltf2_material-unlit.png

Un des nombreux arrangements de nœuds similaires qui exporteront KHR_materials_unlit et rendront sans ombre dans Blender.

Extensions

Le format de base glTF 2.0 peut être étendu avec des informations supplémentaires, en utilisant les extensions glTF. Cela permet au format de fichier de contenir des détails qui n’étaient pas considérés comme universels au moment de la première publication. Tous les lecteurs glTF ne prennent pas en charge toutes les extensions, mais certaines sont assez courantes.

Certaines fonctionnalités de Blender ne peuvent être exportées vers glTF que via ces extensions. Les extensions glTF 2.0 suivantes sont prises en charge directement par ce module complémentaire :

Import

  • KHR_materials_pbrSpecularGlossiness

  • KHR_materials_clearcoat

  • KHR_materials_transmission

  • KHR_materials_unlit

  • KHR_materials_emissive_strength

  • KHR_materials_volume

  • KHR_materials_sheen

  • KHR_materials_specular

  • KHR_materials_ior

  • KHR_materials_variants

  • KHR_lights_punctual

  • KHR_texture_transform

  • KHR_mesh_quantization

Export

  • KHR_draco_mesh_compression

  • KHR_lights_punctual

  • KHR_materials_clearcoat

  • KHR_materials_transmission

  • KHR_materials_unlit

  • KHR_materials_emissive_strength

  • KHR_materials_volume

  • KHR_materials_sheen

  • KHR_materials_specular

  • KHR_materials_ior

  • KHR_materials_variants

  • KHR_texture_transform

Extensions glTF tierces

Il est possible pour les développeurs Python d’ajouter la prise en charge par Blender pour des extensions glTF supplémentaires en écrivant leur propre module complémentaire tiers, sans modifier ce module complémentaire glTF. Pour plus d’informations, voir l’exemple sur GitHub et, si nécessaire, enregistrer un préfixe d’extension.

Custom Properties

Les propriétés personnalisées sont toujours importées et seront exportées à partir de la plupart des objets si l’option Include ‣ Custom Properties est sélectionnée avant l’exportation. Celles-ci sont stockés dans le champ extras de l’objet correspondant dans le fichier glTF.

Contrairement aux extensions glTF, les propriétés personnalisées (extras) n’ont pas d’espace de noms défini et peuvent être utilisées à des fins spécifiques à l’utilisateur ou à l’application.

Animations

Une animation glTF change les transformations des objets ou des os de pose, ou les valeurs des clés de forme. Une animation peut affecter plusieurs objets, et il peut y avoir plusieurs animations dans un fichier glTF.

Import

Les modèles importés sont configurés de manière à ce que la première animation du fichier soit lue automatiquement. Passez en revue la Timeline pour la voir lire.

Lorsque le fichier contient plusieurs animations, le reste sera organisé à l’aide du Nonlinear Animation editor. Chaque animation devient une action cachée dans une piste NLA. Le nom de la piste est le nom de l’animation glTF. Pour rendre visible l’animation dans cette piste, cliquez sur Solo (icône étoile) à côté de la piste que vous voulez lire.

../../_images/addons_import-export_scene-gltf2_animation-solo-track.png

Voici l'exemple de modèle fox montrant son animation “Run”.

Si une animation affecte plusieurs objets, elle sera décomposée en plusieurs parties. La partie de l’animation qui affecte un objet devient une action cachée sur cet objet. Utilisez les noms des pistes pour savoir quelles actions font partie de la même animation. Pour lire l’ensemble de l’animation, vous devez activer Solo (icône étoile) pour toutes ses pistes.

Note

Il n’y a actuellement aucun moyen de voir la pose non animée d’un modèle ayant des animations.

You can also use the animation switcher that can be found in DopeSheet editor.

Note

Vous devez activer l’interface utilisateur dans les préférences des modules complémentaires pour voir le commutateur d’animation

../../_images/addons_import-export_scene-gltf2_addon-preferences-animation.png

Vous pouvez changer toute l’animation importée. Il permet automatiquement le Solo (Icône Étoile) pour toutes les pistes nécessaires. Il réinitialise également l’objet non animé pour Rest la transformation.

Export

Vous pouvez exporter des animations en utilisant différentes manières. La façon dont les animations glTF sont créées à partir des actions / NLA est contrôlée par l’option d’exportation Animation ‣ Mode.

Actions (default)

An action will be exported if it is the active action on an object, or it is stashed to an NLA track (e.g. with the Stash or Push Down buttons in the Action Editor). Actions which are not associated with an object in one of these ways are not exported. If you have multiple actions you want to export, make sure they are stashed!

Une animation glTF peut avoir un nom, qui est le nom de l’action par défaut. Vous pouvez le remplacer en renommant sa piste NLA de NLATrack/[Action Stash] par le nom que vous voulez utiliser. Par exemple, le modèle Fig. fox sera exporté avec trois animations, “Survey”, “Walk”, et “Run”. Si vous renommez deux pistes sur deux objets différents avec le même nom, elles feront partie de la même animation glTF et seront lues ensemble.

L’importateur organise les actions de manière à ce qu’elles soient exportées correctement avec ce mode.

Ce mode est utile si vous exportez pour Game Engine, avec une bibliothèque d’animation d’un personnage. Chaque action doit être sur sa propre piste NLA.

Activer les actions fusionnées

Dans ce mode, l’organisation NLA n’est pas utilisée, et une seule animation est exportée en utilisant les actions actives sur tous les objets.

NLA Tracks

Dans ce mode, chaque piste NLA sera exportée en tant qu’animation glTF indépendante. Ce mode est utile si vous utilisez des modificateurs Strip, ou si vous obtenez plusieurs action sur une même Track.

Si vous renommez deux pistes sur deux objets différents avec le même nom, elles feront partie de la même animation GLTF et joueront ensemble.

Scene

En utilisant l’option Scene, les animations seront exportées comme vous pouvez les voir dans la fenêtre. Vous pouvez choisir d’exporter une seule animation glTF, ou chaque objet séparément.

Note

N’oubliez pas que certains types d’animation sont pris en charge :

  • Transformation d’objet (emplacement, rotation, échelle)

  • Pose bones

  • Valeurs de clé de forme

L’animation d’autres propriétés, comme la physique, les lumières ou les matériaux, sera ignorée.

Note

Pour échantillonner des animations clés de forme contrôlées par des pilotes utilisant des transformations osseuses, elles doivent être sur un objet maillé qui est un enfant direct de l’armature des os.

Note

Seules les Actions (default) et le mode Active Actions merged peuvent gérer les animations non échantillonnées.

Variations de format de fichier

La spécification glTF identifie différentes manières dont les données peuvent être stockées. L’importateur gère toutes ces manières. L’exportateur demandera à l’utilisateur de sélectionner l’un des formulaires suivants :

glTF Binary (.glb)

Ceci produit un fichier .glb unique avec toutes les données de maillage, les textures d’image et les informations associées regroupées dans un seul fichier binaire.

Astuce

L’utilisation d’un seul fichier facilite le partage ou la copie du modèle sur d’autres systèmes et services.

glTF Separate (.gltf + .bin + textures)

Produit un fichier .gltf basé sur du texte JSON décrivant la structure globale, avec un fichier .bin contenant des données de maillage et de vecteur, et éventuellement un certain nombre de fichiers .png ou .jpg contenant des textures d’image référencées par le fichier .gltf.

Astuce

Le fait de disposer d’un assortiment de fichiers séparés permet à un utilisateur de revenir en arrière et de modifier beaucoup plus facilement n’importe quel JSON ou images une fois l’exportation terminée.

Note

Sachez que le partage de ce format nécessite le partage de tous ces fichiers séparés ensemble en tant que groupe.

glTF Embedded (.gltf)

Cela produit un fichier .gltf basé sur du texte JSON, avec toutes les données de maillage et les données d’image codées (en Base64) dans le fichier. Cette forme est utile si l’asset doit être partagé via une connexion en texte brut uniquement.

Avertissement

This is the least efficient of the available forms, and should only be used when required.

Properties

Import

Pack Images

Empaqueter toutes les images dans le fichier blend.

Merge Vertices

Le format GLTF nécessite des normales, des UV et d’autres attributs de sommet discontinus pour être stockés sous forme de sommets séparés, selon les besoins pour le rendu sur le matériel graphique typique. Cette option tente de combiner des sommets co-localisés dans la mesure du possible. Actuellement, ne peut pas combiner sommets avec normales différentes.

Shading

Comment les normales sont calculées lors de l’importation.

Guess Original Bind Pose

Détermine la pose des os (et par conséquent des maillages avec peau) en Mode Édition. Lorsque cette option est activée, tente de deviner la pose qui a été utilisée pour calculer les matrices de liaison inverses.

Bone Direction

Changes the heuristic the importer uses to decide where to place bone tips. Note that the Fortune setting may cause inaccuracies in models that use non-uniform scaling. Otherwise this is purely aesthetic.

Lighting Mode

Compatibilité arrière en option pour les moteurs de rendu non standard. S’applique aux lumières. Standard : unités d’éclairage GLTF à base physique (CD, LX, NT). Sans unité : Éclairage non physique et sans unité. Utile lorsque les contrôles d’exposition ne sont pas disponibles bruts (obsolètes) : Forces d’éclairage de Blender sans conversion

Export

Format

Voir : Variations de format de fichier.

Keep Original

Pour le format de fichier GLTF Separate uniquement. Garde les fichiers de textures originales si possible. Avertissement : si vous utilisez plusieurs textures, où la norme PBR n’en nécessite qu’une seule, une seule texture sera utilisée. Cela peut conduire à des résultats inattendus

Textures

Pour le format de fichier GLTF Separate uniquement. Dossier pour placer dedans des fichiers de texture. Relatif au fichier gltf.

Copyright

Droits légaux et conditions du modèle.

Remember Export Settings

Stocker les paramètres d’exportation dans le fichier blend, afin qu’ils soient rappelés la prochaine fois que le fichier sera ouvert.

Include

Selected Objects

Exporter uniquement les objets sélectionnés.

Visible Objects

Exporter uniquement les objets visibles.

Renderable Objects

Exporter uniquement les objets qui peuvent être rendus.

Active Collection

Exporter les objets de la collection active uniquement.

Include Nested Collections

Uniquement lorsque Active Collection est activée. Si activé, l’exportation d’objets récursivement sur des collections actives imbriquées.

Active Scene

Exporter la scène active uniquement.

Custom Properties

Exporter les propriétés personnalisées en tant qu’extras glTF.

Cameras

Exporter les caméras.

Punctual Lights

Exporter les lumières directionnelles, point et spot. Utilise l’extension glTF KHR_lights_punctual.

Transform

Y Up

Exporter en utilisant la convention glTF, +Y vers le haut.

Data - Mesh

Apply Modifiers

Exporte les objets en utilisant le maillage évalué, c’est-à-dire le maillage résultant après que tous les Modificateurs aient été calculés.

UVs

Exporter les UV (coordonnées de texture) avec des maillages.

Normals

Exporter les normales de sommet avec des maillages.

Tangents

Exporter les tangentes aux sommets avec des maillages.

Vertex Colors

Export Color Attributes with meshes.

Attributes

Exporter les attributs avec des maillages, lorsque le nom commence par un trait de soulignement.

Loose Edges

Exporte les arêtes libres sous forme de lignes, en utilisant le matériau du premier slot de matériau.

Loose Points

Exporte les points libres en tant que points glTF, en utilisant le matériau du premier slot de matériau.

Data - Material

Materials

Exporte des matériaux complets, uniquement des espaces réservés (toutes les primitives mais sans matériaux) ou n’exporte pas de matériaux. (Dans ce dernier cas, les primitives sont fusionnées, perdant les informations d’emplacement de matériau).

Images

Output format for images. PNG is lossless and generally preferred, but JPEG might be preferable for web applications due to the smaller file size. If None is chosen, materials are exported without textures.

JPEG Quality

When exporting jpeg files, the quality of the exported file.

Export Original PBR Specular

When On, specular data are exported from glTF Material Output node, Instead of using sockets from Principled BSDF Node.

Data - Shape Keys

Exporter les clés de forme (cibles de morphing).

Shape Key Normals

Exporter les normales de sommet avec des clés de forme (cibles de morphing).

Shape Key Tangents

Exporter les tangentes de sommet avec des clés de forme (cibles de morphing).

Data - Armature

Use Rest Position Armature

Exportation d’armatures utilisant la position de repos comme pose de repos articulaire. Si désactivé, la pose du cadre actuel est utilisée comme pose de repos.

Export Deformation Bones only

Exporter des os de déformation uniquement, pas d’autres os. L’animation pour les os de déformation est pré-calculée.

Flatten Bone Hierarchy

Utile en cas de matrice TRS non décomposable.

Data - Skinning

Exporter les données de skinning

Include All Bone Influences

Allow more than 4 joint vertex influences. Models may appear incorrectly in many viewers.

Data - Lighting

Lighting Mode

Compatibilité arrière en option pour les moteurs de rendu non standard. S’applique aux lumières. Standard : unités d’éclairage GLTF à base physique (CD, LX, NT). Sans unité : Éclairage non physique et sans unité. Utile lorsque les contrôles d’exposition ne sont pas disponibles bruts (obsolètes) : Forces d’éclairage de Blender sans conversion

Data - Compression

Compresser les maillages à l’aide de Google Draco.

Compression Level

Une compression plus élevée entraîne un encodage et un décodage plus lents.

Quantization Position

Des valeurs plus élevées se traduisent par de meilleurs taux de compression.

Normal

Des valeurs plus élevées se traduisent par de meilleurs taux de compression.

Texture Coordinates

Des valeurs plus élevées se traduisent par de meilleurs taux de compression.

Color

Des valeurs plus élevées se traduisent par de meilleurs taux de compression.

Generic

Des valeurs plus élevées se traduisent par de meilleurs taux de compression.

Animation

Animation mode

Mode d’animation utilisé pour l’exportation (voir Animations)

Shape Keys Animations

Exportation de Shape Keys Animation. Nécessite d’exporter des Shape Keys (voir Data - Shape Keys)

Bake All Objects Animations

Utile lorsque certains objets sont containts sans être animés eux-mêmes.

Animation - Rest & Ranges

Use Current Frame as Object Rest Transformations

Exporte la scène dans le cadre d’animation actuel. Si dasactivé, le cadre 0 est utilisé comme transformation de repos pour les objets.

Limit to Playback Range

Cliper les animations à la plage de lecture sélectionnée.

Set all glTF Animation starting at 0

Définir toute l’animation glTF à partir de 0. Peut être utile pour l’animation en boucle

Negative Frames

Lorsque certaines frames sont dans une plage négative, glisse ou recadre l’animation.

Animation - Armature

Export all Armature Actions

Exporte toutes les actions, liées à une seule armature. Avertissement : L’option ne prend pas en charge les exportations incluant plusieurs armatures.

Reset pose bones between actions

Réinitialise les poses d’os entre chaque action exportée. Cela est nécessaire lorsque certains os ne sont pas clés sur certaines animations.

Animation - Échantillonnage

Appliquer un échantillonnage à toutes les animations. Ne pas échantillonner l’animation peut entraîner une mauvaise exportation d’animation.

Sampling Rate

À quelle fréquence évaluer les valeurs animées (en images).

Animation - Optimisation

Optimize Animation Size

Réduire la taille du fichier exporté en supprimant les images clés en double.

Force keeping channel for armature / bones

Si toutes les images clés sont identiques dans une armature, force à garder l’animation minimale.

Force keeping channel for objects

if all keyframes are identical for object transformations, force keeping the minimal animation

Contribuer

Cet importateur/exportateur est développé via glTF-Blender-IO repository, où vous pouvez déposer des rapports de bogues, soumettre des demandes de fonctionnalités ou contribuer au code.

La discussion et le développement du format glTF 2.0 lui-même ont lieu sur glTF GitHub repository et les commentaires y sont les bienvenus.