web-dev-qa-db-fra.com

Comment créer une animation .usdz?

Vous pouvez maintenant convertir les modèles 3D en fichiers .usdz (archive Zip non compressée) à l'aide de l'outil de ligne de commande d'Apple fourni avec Xcode 10 beta.

Exemple de code pour convertir un fichier .obj en .usdz:

xcrun usdz_converter magnifying_glass.obj -g frame magnifying_glass.usdz 
-color_map gold-basecolor.png -normal_map gold-normal.png
-roughness_map gold-roughness.png -metallic_map gold-metallic.png

Les types de fichiers 3D d’entrée suivants sont pris en charge:

  • Fichier OBJ
  • Fichier d'alambic à une image (ABC)
  • Fichier USD au format .usda (ascii) ou .usdc (binaire) 

Je crois comprendre que le fichier OBJ ne prend pas en charge l'animation de manière native.

Un fichier Alembic à une image ne prend pas non plus en charge l'animation, mais une image à une seule image. 

Donc, je suppose que vous devez utiliser un fichier usda qui relie une séquence de fichiers Alembic à une image ou OBJ à une image pour générer des animations.

Existe-t-il une documentation publiquement disponible sur la manière de s'y prendre?

Un fichier usda peut utiliser des fichiers de données utiles pour référencer des maillages à une image. L'exemple ci-dessous fait référence à une géométrie de fichier alambic à une image Treasure Chest.

#usda 1.0

def "Chest_Base" (
     references = [ @./Chest.abc@</Chest_Base> ])
{

}

Mais je n'ai pas trouvé de moyen concret de lier une séquence de fichiers .obj ou __embrayés alcode à code unique .abc pour créer une animation de 10 secondes.

Toute aide ou allusion serait grandement appréciée.

Edit 30 juin:

J'ai maintenant réussi à animer un fichier USDZ. J'ai une démo en direct ici d'un engrenage en rotation et d'un hélicoptère. 

Fondamentalement, je devais télécharger le pipeline USD de github et le construire sur mon mac. Vous pouvez obtenir de bonnes instructions sur la façon de faire cela depuis ici

Attention, prévoyez au moins deux heures, la construction elle-même dure environ une heure. 

Après cela, j'ai exécuté le exemple de didacticiel animé dans le lot de pipeline USD. Step5.usda (fichier ascii usd) contient un exemple d'animation que j'ai suivi pour créer mes propres animations à l'aide de rotations. 

L’exécution de cette commande usdz créera une simple animation d’un sommet d’essai si vous créez le fichier Step5.usda à la suite du didacticiel pixar du lien ci-dessus.

xcrun usdz_convertor Step5.usda animationTest.usdz

Edit 10 juillet 2018:

usdz prend également en charge les ressources alambiques (avec animations).

J'ai maintenant réussi à obtenir une animation simple fonctionnant sous usdz (en utilisant le format de fichier alambic). Cependant, une animation sur un personnage que j'ai essayé n'a pas fonctionné.

J'ai exporté des ressources Alembic avec les exportateurs Blender et Modo Alembic ... les mêmes résultats. 

Les matériaux UV ne mappaient pas non plus correctement sur le maillage. Quelque chose ne va pas avec la mise à l'échelle et la cartographie UV ... les matériaux sont fragmentés. A ce stade, je ne sais pas s'il s'agit d'un bug ou si je ne fais pas quelque chose de mal ici. Il y a quelques discussions sur ce problème de cartographie uv sur le forum Apple

Edit 8 septembre 2018:

Il s’agit d’un domaine en pleine évolution et je suis convaincu que de plus en plus de moyens de s’attaquer à la création d’animation usdz apparaîtront au fil du temps. Cependant, à l’heure actuelle, le moyen le plus économique et le moins coûteux (open source) de créer des fichiers usdz avec des animations de transformation, os, fusion-forme ou morphing est l’utilisation d’un outil de ligne de commande hébergé sur GitHub appelé glTF2usd

L'outil peut convertir un fichier d'animation glTF en un fichier usda (type de fichier intermédiaire) pour créer le fichier usdz. Il devrait également prendre en charge la création directe d’usdz prochainement, éliminant ainsi la nécessité d’utiliser l’outil de ligne de commande Apple usdz_converter pour passer d’usda -> usdz.

Ne supporte actuellement qu’un groupe d’animation. Il existe encore quelques bugs concernant les rotations. - La poignée de rotation -use-euler-rotation peut être utilisée pour faciliter les rotations. 

J'ai posté des animations usdz que j'ai créées avec l'outil dans une galerie usdz en ligne www.fusionar.app

6
Clay

Ça marche!

 enter image description here

Travailler avec le format de fichier Alembic dans macOS est la vraie douleur dans le dos. Mais j'ai développé ma propre méthode. Alors, animez votre modèle 3D dans Autodesk Maya pour Mac (Version 2016 Extension 2 SP 1). Ensuite, faites votre animation/dynamique en utilisant:

Edit ->  Keys -> Bake Simulation

Vérifiez si le module Alembic est présent dans l'interface utilisateur via: 

Windows -> Settings/Preferences –> Plug-in Manager -> AbcExport.bundle

Après cela, allez à:

Cache –> Alembic Cache -> Export All to Alembic...

Cette commande vous permet de créer un fichier abc. Sa lecture est 25 fois plus lente que nécessaire, mais vous pouvez la corriger sous Xcode. Il est donc temps de convertir votre animation à l'aide de la commande Xcode 10 dans l'application Terminal:

xcrun usdz_converter ~/Desktop/sphere.abc ~/Desktop/anime.usdz -v

 enter image description here

Vous obtiendrez un fichier usdz avec la même vitesse de lecture (25 fois plus lente). 

 enter image description here

Corrigeons cette vitesse de lecture dans Xcode 10. Créez un projet, glissez-déposez votre fichier usdz, cliquez sur Show the Scene Graph View picto et sélectionnez un objet animé dans la hiérarchie de la scène (dans mon cas, il s'agit de pSphere1). Dans l'onglet Node Inspector, remplacez la propriété Speed de 1 par 25. Ce nombre dépend du réglage de la fréquence d'images de votre logiciel d'animation (24 ips, 25 ips, 30 ips, etc.). 

 enter image description here

C'est tout.

 enter image description here

Aussi Jimmy Gunawan a publié cette vidéo de Blender en capture d'écran le 31 juillet 2018. Dans cet épisode vidéo, il vous guide tout au long du processus d'exportation des animations de transformation pour .usdz via Alembic. Il possède une animation de transformation procédurale de nombreux objets créés à l'aide de Animation Nodes, exportés au format de fichier 3D .usdz animé pour la réalité augmentée dans iOS 12. 

En gros, avec l'animation .usdz, vous devez avoir un objet racine ou null pour pouvoir l'exporter correctement. Alors regardez la vidéo de Jimmy Gunawan.

 enter image description here

Vous pouvez également exporter une animation sur ordinateur au format de fichier .usdz à l'aide des outils 3D professionnels suivants: Autodesk Maya, La Katana de la fonderie, ouSideFX Houdini. Pour plus d'informations, visitez la page Web de cette Pixar .

1
ARGeo