Hero-Image : BannerImage.png
Un squelette est une hiérarchie permettant de définir les os (parfois appelés articulations) dans un maillage squelettique. Ces os imitent en quelque sorte un véritable squelette biologique grâce à leur position et au contrôle de la déformation des personnages.
Dans l'Unreal Engine, les squelettes sont utilisés pour stocker et associer les données d'animation, la hiérarchie globale du squelette et les séquences d'animation. Il est également possible de partager les ressources de squelette via diverses méthodes, de façon à échanger des animations et des données supplémentaires entre différents squelettes.
Dans ce document, nous vous expliquons commet créer et utiliser les squelettes.
Prérequis
- Votre projet contient un acteur à maillage squelettique, ou vous disposez d'un personnage FBX dépouillé à importer dans l'Unreal Engine.
Créer des squelettes
La principale méthode pour créer un squelette est d'importer un personnage FBX dépouillé, qui est ensuite converti en un maillage squelettique dans l'Unreal Engine. Lors de l'importation d'un maillage squelettique, dans la fenêtre Options d'importation FBX, si vous laissez le champ Squelette vide, une ressource de squelette est automatiquement créée en fonction du personnage dépouillé importé.
Après avoir importé votre personnage, la ressource de squelette est créée avec d'autres ressources de maillage squelettique.
Vous pouvez également créer une copie d'un squelette à partir de n'importe quel maillage squelettique en cliquant dessus avec le bouton droit de la souris dans le navigateur de contenu et en sélectionnant Squelette > Créer un squelette. Vous créez ainsi un nouveau squelette associé à un maillage existant. Si ce maillage était associé à un autre squelette, il est derechef lié au nouveau squelette, de même que toutes les animations.
Double-cliquez sur la ressource de squelette pour ouvrir l'éditeur de squelette.
Informations sur l'arborescence du squelette
Les os et autres éléments disponibles dans l'arborescence du squelette peuvent s'afficher différemment en fonction de plusieurs facteurs.
| Icône | Description |
|---|---|
| Os normal ayant une incidence sur les sommets du maillage squelettique. | |
| Os du squelette actuel qui n'a pas d'incidence sur les sommets du maillage squelettique. Ces os sont généralement utilisés de manière auxiliaire, par exemple pour fixer des armes ou des accessoires ; il est toutefois possible de les animer. | |
| Emplacement, c'est-à-dire un point statique servant de point d'attache décalé pour les os. | |
| Os virtuel, c'est-à-dire un os qui suit les transformations d'un autre os, mais dans un espace osseux différent. Ce type d'os, utile pour bloquer les mouvements articulaires indésirables, est utilisé conjointement avec la cinématique inverse. | |
| Os qui existe dans le squelette, mais qui n'est pas utilisé par le maillage squelettique actuel. Ce cas de figure peut se présenter si vous avez fusionné des squelettes, ou si vous prévisualisez différents LOD sur ce squelette qui n'utilisent pas certains os. |
Stocker les données d'animation
En plus de contrôler l'animation, les squelettes dans l'Unreal Engine stockent des données propres à l'animation. Lorsque vous créez des données à partir de ces sources, notamment une notification d'animation dans une séquence d'animation, ces données sont ajoutées au squelette en tant que données partagées.
Les squelettes stockent les types de données d'animation suivants :
- Notifications d'animation.
- Courbes d'animation.
- Emplacements.
- Sources de reciblage.
- Profils et masques de fusion.
Vous pouvez consulter ces données dans des panneaux d'outils dédiés en cliquant sur Fenêtre dans le menu Éditeur de squelette, puis en activant un ou plusieurs de ces panneaux.
Partager des squelettes
L'une des principales caractéristiques des ressources de squelette est que plusieurs maillages squelettiques peuvent utiliser une seule ressource de squelette, à condition que ces maillages squelettiques fassent appel à la même hiérarchie d'armature générale. Cela signifie que les noms et l'ordre hiérarchique de vos os doivent être cohérents pour que le partage fonctionne correctement.
Prenons par exemple un membre avec trois os dans un maillage squelettique. Les os sont nommés 1, 2, et 3 :
Pour partager ce squelette avec un autre maillage squelettique, vous ne devez pas changer les noms ni modifier l'ordre des os. Le deuxième maillage squelettique peut toutefois contenir des os ajoutés a posteriori ou en tant qu'éléments périphériques à la hiérarchie. Chaque fois que des données d'animation sont reçues pour un os qui n'est pas inclus dans le maillage squelettique, ces données d'animation sont ignorées.
Dans ce cas, votre nouvelle hiérarchie est semblable à l'image ci-dessous. Ici, bien que le deuxième maillage squelettique comporte des os supplémentaires, la hiérarchie originale du premier maillage squelettique est conservée.
Néanmoins, pour que les deux maillages squelettiques utilisent la même ressource de squelette, vous ne pouvez pas renommer les os ni en modifier l'ordre hiérarchique. Si un deuxième maillage squelettique utilise une hiérarchie d'os et une structure d'affectation de noms différentes, vous devez créer une nouvelle ressource squelettique.
Si vous insérez un os dans la hiérarchie sans en modifier l'ordre, vous pouvez partager le squelette sans problème. Cependant, dans la plupart des cas, l'os supplémentaire peut provoquer des déviations de transformation involontaires dans votre squelette. Il est recommandé d'éviter cet écueil.
En tenant compte de ces règles de partage, il existe plusieurs façons de partager des squelettes entre des maillages squelettiques dans l'Unreal Engine. Celles-ci sont présentées ci-dessous.
Fusionner lors de l'importation
La première méthode de partage des squelettes a lieu au cours du processus d'importation FBX. Lorsque vous importez votre nouveau maillage squelettique (avec des os supplémentaires et périphériques conformes aux règles ci-dessus), vous pouvez sélectionner un squelette à partir d'un maillage squelettique existant dans votre projet. Unreal Engine fusionne alors les squelettes, en ajoutant tous les nouveaux os dans la hiérarchie. En outre, les proportions de votre squelette sont définies par le maillage squelettique d'origine à partir duquel il a été créé.
Si vous importez un squelette qui est radicalement différent du squelette que vous tentez de fusionner et qui enfreint les règles de partage, un message d'erreur s'affiche :
Dans ce cas, envisagez de créer une nouvelle ressource de squelette pour le maillage squelettique que vous importez au lieu de le fusionner avec une ressource existante.
Lorsque vous affichez votre squelette fusionné, ces os supplémentaires apparaissent dans votre hiérarchie, mais ils ne sont visibles et actifs que pour le maillage squelettique auquel ils sont destinés.
![]() |
![]() |
|---|---|
| Variante de maillage squelettique 1 | Variante de maillage squelettique 2 |
Squelettes compatibles
En outre, les squelettes peuvent partager de manière non destructive des ressources d'animation en définissant d'autres squelettes compatibles. Les squelettes compatibles peuvent partager des séquences d'animation, des montages, des blueprints d'animation, etc.
Pour définir un autre squelette comme étant compatible avec un personnage, ouvrez le squelette du personnage dans l'éditeur de squelette, puis ouvrez le gestionnaire de reciblage en cliquant sur le bouton de la barre d'outils.
Dans le gestionnaire de reciblage, recherchez la section Gestion des squelettes compatibles du panneau Sources de reciblage, puis cliquez sur Ajouter un squelette pour sélectionner une autre ressource de squelette dans votre projet à l'aide du menu contextuel.
Il est dès lors possible de partager les animations à partir du squelette ajouté à la liste Gérer les sources compatibles.
La compatibilité des squelettes n'est pas bidirectionnelle. Si vous indiquez que le squelette 1 est compatible avec le squelette 2, cela ne signifie pas pour autant que le squelette 2 est compatible avec le squelette 1. Pour que le partage soit entièrement bidirectionnel, vous devez également configurer le squelette 2 pour qu'il soit compatible avec le squelette 1.
La création et la gestion d'un système de squelettes compatibles peuvent être un moyen efficace d'optimiser le nombre de ressources d'animation dont votre projet a besoin pour animer plusieurs personnages. Cependant, pour pouvoir utiliser le système de squelettes compatibles, tous les personnages doivent disposer de structures hiérarchiques de squelettes et de conventions d'affectation de noms pratiquement identiques. En outre, tous les personnages doivent avoir des proportions de maillage similaires pour obtenir des résultats appropriés.
Pour partager des animations entre divers personnages ayant la même structure squelettique, mais des proportions différentes, consultez la documentation Recibler les animations.
Pour générer de nouveau les séquences d'animation afin qu'elles fonctionnent avec des personnages dont le squelette est radicalement différent, consultez la documentation Recibler l'armature de cinématique inverse.
Fonctionnalités du squelette
Dans l'Unreal Engine, les squelettes prennent en charge de nombreuses fonctionnalités de fixation, de fusion, etc. Consultez les pages suivantes pour en savoir plus sur ces fonctionnalités :

