Exporter un squelette pour les moteurs de jeu
Fichier ▸ Exporter ▸ Squelette (JSON)… écrit un rig d'os et ses animations sous forme de données qu'un moteur de jeu peut rejouer, au lieu de les rendre en images.
Une feuille de sprites stocke chaque image sous forme d'image. Un export de squelette stocke plutôt le rig : les os, les images qui y sont accrochées et la façon dont les os bougent dans le temps. Le moteur dessine alors le personnage lui-même : l'animation reste légère et se lit avec fluidité à n'importe quelle taille et n'importe quelle cadence.
Exporter
- Choisissez Fichier ▸ Exporter ▸ Squelette (JSON)….
- Choisissez un dossier. L'export écrit plusieurs fichiers : il demande donc un dossier plutôt qu'un nom de fichier.
- Les fichiers sont écrits aussitôt. Il n'y a aucun réglage à choisir.
Le dossier reçoit skeleton.json, une image d'atlas skeleton.png qui contient les images attachées aux os, et un PNG par maillage, nommé d'après le calque de maillage. Un caractère qu'un nom de fichier ne peut pas contenir est remplacé, et quand deux maillages portent le même nom, le second fichier reçoit un numéro en plus. Les noms sont fixes : exporter de nouveau le même projet remplace donc les mêmes fichiers.
Ce que contient le fichier
La structure s'inspire de celle de Spine : os, slots, attachements et animations. Ce n'est pas un fichier Spine, et aucun runtime officiel de Spine ne le lit, mais sa forme est assez familière pour qu'un importeur pour votre moteur n'ait à être écrit qu'une seule fois.
| Partie | Ce qu'elle contient |
|---|---|
| Os | Chaque os de chaque calque d'os, avec sa pose de repos relative à son parent. Les os statiques, les cibles IK, sont laissés de côté : leur effet est déjà contenu dans les os qu'ils pilotent |
| Attachements de maillage | Chaque calque de maillage, avec ses sommets au repos, ses triangles et le poids de chaque os sur chaque sommet |
| Attachements de région | Les calques qui suivent un os de façon rigide par Lier le calque, placés sur l'atlas avec leur décalage fixe par rapport à l'os |
| Animations | Une animation par marqueur de groupe du montage, nommée d'après le marqueur. Sans marqueur de groupe, il y a une seule animation appelée default, du point d'entrée au point de sortie |
Tout ce que le moteur devrait sinon reproduire est converti en simples nombres : l'IK, la dynamique des os, les os de contrôle et les actions deviennent tous des clés ordinaires de rotation, de translation et d'échelle. Quand une action remodèle un maillage d'une façon que les poids des os ne peuvent pas exprimer, cette animation stocke à la place les positions des sommets du maillage image par image : le moteur n'a donc pas besoin de savoir comment fonctionnent les actions.
Ce qui n'est pas encore inclus
- Les calques qui bougent avec leurs propres images clés et ne sont liés à aucun os. Exportez-les plutôt en feuille de sprites ou en séquence PNG.
- Le suivi automatique à l'intérieur d'un calque d'os. Seuls les poids que vous avez liés ou peints, et les calques liés avec Lier le calque, sont exportés : un calque qui ne suit le rig que par une liaison Souple ou Région ne bouge pas dans l'export.
- Un maillage qui a en plus sa propre position, rotation ou échelle par-dessus ses os.
- Les contraintes IK, de transformation, de tracé et physiques en tant que contraintes dynamiques, les événements, et les skins pour changer de costume.