Collada

Le module COLLADA™ a été implémenté comme un outil flexible pour l’exportation et l’importation de fichiers « .dae ». L’objectif de la conception est de fournir un ensemble de paramètres qui devraient permettre d’exporter/importer des fichiers Collada depuis/vers une variété d’outils. Mais sachez que le module Collada est encore en cours de développement. Il est donc possible que votre scénario d’utilisation particulier ne soit pas encore pris en charge.

Collada Exporter

../../_images/files_import-export_collada_export.png

Operator Presets

Il existe deux préréglages de l’opérateur (voir le haut de la Barre latérale) pour les utilisateurs de Second Life (SL) :

  • Second Life Static – est bon pour exporter des maillages statiques.

  • Second Life Rigged – est bon pour exporter le personnage SL par défaut.

Note

Notes spéciales pour les utilisateurs de Second Life :

  • Veuillez utiliser les préréglages de l’opérateur. Tous les autres paramètres d’exportation ne fonctionneront pas pour Second Life.

  • L’orientation du personnage doit être telle que le personnage regarde vers un X positif.

  • Scale et et Rotation doivent être appliquées avant l’exportation !

Main

Selection Only

Lorsque l’option Selection Only est activée, seuls les objets sélectionnés sont exportés. Sinon, la scène entière est exportée avec tous les objets visibles et invisibles.

Include Children

Quand cette option est activée alors tous les enfants des objets sélectionnés seront aussi exportés indépendamment de leur état de sélection.

Indication

Vous ne pouvez sélectionner qu’une armature, puis en utilisant cette option, tous les maillages avec rigs attachés à l’armature seront également exportés.

Include Armatures

Quand cette option est activée, toutes les armatures liées aux objets sélectionnés seront également exportées indépendamment de leur état de sélection.

Indication

Vous ne pouvez sélectionner que les objets, puis dans l’exportateur activez cette option pour exporter également les données de l’armature.

Include Shape Keys

Comprend l’application des clés de forme en exportant les maillages avec la configuration précalculée de la clé de forme actuelle.

Global Orientation

Todo.

Options de texture

Only Selected UV Map

Lorsque votre maille contient plusieurs couches UV, Blender exporte toutes les couches par défaut. Cette option vous permet de n’exporter que la couche UV active (sélectionnée).

Copy

Lorsque vous exportez des images ou des textures d’images basées sur des matériaux, l’exportateur crée des références de fichier absolues dans le fichier d’exportation.

Mais si l’option Copy est activée, l’exportateur créera des copies des images à la place et les placera à côté du fichier d’exportation. Dans ce cas, les références du fichier sont rendues relatives.

Geometry

Export Data Options

Triangulate

Le maillage peut être triangulée à la volée. La triangulation est basée sur la même fonction qui est utilisée dans l’outil Triangulate Faces pour trianguler la sélection actuelle de visages. Pour un contrôle total sur la triangulation, vous pouvez le faire manuellement avant l’exportation. Cependant, cette option permet de ne faire la triangulation que pour les données exportées. Le maillage lui-même n’est pas affecté.

Apply Modifiers

Tous les modificateurs actifs seront appliqués de manière non destructive. Cela étant, les modificateurs seront appliqués aux copies des maillages.

Resolution

Contrôle l’application de la résolution de la Vue 3D ou de la résolution de rendu pour les modificateurs qui fournissent un mode de prévisualisation et un mode de rendu.

Transform

Collada prend en charge deux types de spécifications de matrice de transformation. Soit sous forme de <Matrice> soit sous forme d’un ensemble de décompositions de transformation (pour le déplacement, la rotation et l’échelle). Notez que l’exportateur ne suivra pas strictement cette configuration d’option, mais la prendra plutôt comme un indice pour utiliser l’option si jamais c’est possible. En effet, certains des types de données exportés ont des règles spécifiques sur la façon dont la matrice de transformation doit être exportée. Il s’agit d’un développement en cours et une méthode moins ambiguë pourrait être fournie à l’avenir.

Armature

Armature Options

Deform Bones Only

Lorsque cette option est activée, l’exportateur retire tous les os non déformants des armatures exportées. Cette option est utile lorsque vos armatures contiennent des os de contrôle qui ne font pas réellement partie du squelette du personnage. Par exemple, vous pouvez maintenant exporter le rig Avastar avec cette option activée. Le rig exporté est compatible avec Second Life. Mais veuillez noter les restrictions ci-dessous.

Export to SL/OpenSim

Lorsque cette option est activée, certains problèmes d’orientation des os sont calculés différemment et elle est conçue pour être utilisée pour l’exportation vers Second Life ou OpenSim.

Cela n’est pertinent que pour les maillages rigides, pour les maillages statiques, cela ne fait rien du tout.

Animation

Extra

Options de Collada

Use Object Instances

Dans blender vous pouvez réutiliser le même maillage pour plusieurs objets. Ceci est nommé « instantiation d’objet ». Quand vous activez cette option, Blender va propager l’instantiation d’objet au fichier Collada.

Use Blender Profile

Collada peut être complété par des données spécifiques à l’outil (profils). Blender a son propre profil (non officiel) qui permet d’exporter des informations sur le rig dans le fichier Collada, qui peut ensuite être utilisé pour reconstruire le rig si jamais il est nécessaire de réimporter un fichier dae dans Blender.

Sort by Object Name

L’ordre d’exportation des données est lié à l’ordre interne des objets et ne peut être influencé de manière fiable. Cette option garantit que les nodes Geometry et les nodes Object sont tous deux exportés dans l’ordre alphabétique.

Keep Bind Info

Lorsqu’un rig est importé dans Blender, la pose de liaison du rig sera utilisée comme pose de repos de Blender. Ainsi, toutes les informations de la Matrice de la pose de repos d’origine sont perdues. Mais dans certains cas, vous pouvez souhaiter conserver les informations d’origine du rig. Cette option vérifie que chaque os a deux tableaux :

  • rest_mat – un tableau de 16 flottants qui représentent la matrice de pose de repos d’origine de l’os.

  • bind_mat – un tableau de 16 flottants qui représentent la matrice de pose de liaison d’origine de l’os.

Si les tableaux sont présents, alors ces tableaux seront utilisés à la place de la pose de repos/liaison actuelle. Ces deux tableaux sont soit créés par un import Collada précédent (voir Collada Importer ci-dessous), soit ils peuvent être créés manuellement, soit par un add-on (basé sur un script).

Collada Importer

../../_images/files_import-export_collada_import.png

L’importateur Collada est surtout piloté par les données importées. Il existe une option pour contrôler les unités d’import :

Import Data Options

Import Units

Si cette option n’est pas activée, les données importées seront redimensionnées en fonction du système d’unités actuellement utilisé. Si cette option est activée, alors Blender s’adaptera au système d’unités tel que fourni par le fichier Collada.

Armature Options

Fix Leaf Bones

Collada n’enregistre que les « articulations », qui sont pour la plupart similaires aux têtes d’os de Blender. Mais lorsque vous importez un fichier Collada, les extrémités des os ne sont pas définies. Cela n’a pas d’importance pour les os connectés où l’os parent n’a qu’un seul enfant. Dans ce cas, l’emplacement de l’extrémité de l’os du parent est ajusté à la position de l’articulation de l’enfant. Mais c’est surtout pour les os non connectés et les os ayant plus d’un enfant que nous avons un problème.

Lorsque l’option Fix Leaf Bones est activée, Blender essaie alors de deviner où la tête/queue des os non connectés serait le mieux placée. Si l’option est désactivée, alors la te/queue des os sont placées avec un décalage le long de l’axe Y. C’est pourquoi les os pointent souvent vers l’axe Y.

Find Bone Chains

Lorsqu’un os a plusieurs enfants, il n’est pas défini lequel (le cas échéant) des enfants doit être relié à l’os. Lorsque l’option Find Bone Chains est activée, alors Blender détermine la plus longue chaîne osseuse (d’enfants) pour chaque os. Tous les os le long de cette chaîne seront alors automatiquement connectés.

Si l’option est désactivée, les enfants ne seront connectés aux parents que si le parent n’a qu’un seul enfant. Mais voir l’option Auto Connect ci-dessous.

Auto Connect

Lorsque cette option est activée, les enfants seront automatiquement connectés à leurs parents, si le parent n’a qu’un seul enfant.


Keep Bind Info

Lorsque cette option est activée, l’importateur crée alors deux propriétés personnalisées pour chaque os :

  • rest_mat – un tableau de 16 flottants qui représentent la matrice de pose de repos d’origine de l’os.

  • bind_mat – un tableau de 16 flottants qui représentent la matrice de pose de liaison d’origine de l’os.

Ces deux tableaux peuvent être utilisés ultérieurement lorsque vous souhaitez exporter à nouveau le rig et vous assurer que la combinaison d’origine de la pose de repos et de la pose de liaison doit être utilisée.

Détails techniques

Mesh

Import

Les types de géométrie pris en charge sont :

  • Tris (non testé)

  • Polylist

  • Polygons

  • N-gons

  • Tri-fans (non testés)

  • Lines

Export

Les données de maillage sont exportées sous forme de <polylist>, de <lines> et de <vertices>.

Light

Import

Blender s’efforce d’importer les lumières à partir d’un fichier dae. Si un profil Blender est détecté pour des lumières, toutes les valeurs de celles-ci seront utilisées à la place. Cela garantit une réimportation complète à partir d’un fichier dae exporté par Blender. La prise en charge <extra> a été ajoutée dans Blender 2.57.

Export

Un profil Blender pour les lumières a été ajouté par le biais de la balise <extra> . Light struct de Blender dans son ensemble sera exporté par ce profil, à l’exception de la chute de la courbe de lumière.

Animation

Export & Import

  • Prise en charge des animations de transformation d’objets (mesh, camera, light). Seules les rotations d’Euler, qui est l’option par défaut pour les objets, peuvent être exportées. Pour les animations d’os d’armature, les types de rotation d’Euler et de quaternion sont pris en charge.

  • L’importation et l’exportation d’animations pour les paramètres suivants sont prises en charge :

    • Light

    • Camera

    • Material effects

  • Animation de l’os de l’armature ne contrôlant pas la peau.

  • Animations d’armatures avec des os déformant la peau.

  • Animations d’armatures en Mode Objet.

  • Animations d’armature entièrement rigides (en référence à l’add-on Rigify). Pour l’exportation d’animations d’armature rigides :

    • Sélectionnez l’action Bake. (Ouvrez Search et tapez « Bake Action »).

    • Si vous n’avez sélectionné que les os déformés, cochez Only Selected. Cela donnera un dae plus petit. Sinon, décochez Only Selected.

    • Cochez Clear Constraints.

    • Bake Action.

    • Sélectionnez le maillage et les os déformés. Puis exportez vers Collada en cochant uniquement l’option sélectionnée. (Il n’est pas strictement nécessaire de sélectionner uniquement le Maillage et les os. En sélectionnant et en n’exportant que l’option sélectionnée, vous obtiendrez des fichiers dae plus petits).

    • Vidéo de démonstration

Pour les nœuds d’os qui sont des nœuds feuilles dans l’arborescence de l’armature, ou si un os a plus d’un enfant, un profil Blender pour l’extrémité avec une balise <extra>, est ajouté à ces nœuds d’articulation. Pour calculer correctement l’emplacement de l’os à la queue lors de la réimportation.

Note

Points importants à retenir

  • Les noms des objets et des blocs de données sont limités à 21 caractères (octets).

  • Les noms des couches UV sont limités à 32 caractères (octets).

  • Animation de l’armature seule sur le maillage, contrôleur de peau unique.

  • Encore aucune prise en charge des modificateurs.

À l’import d’un fichier dae qui a <instance_node>, à l’export cette information est essentiellement perdu et ces nodes seront des <node>s.