Conversion de GLB en FBX en Node.js

Les fichiers GLB sont des fichiers texte qui enregistrent les textures, images et autres fichiers utilisés dans un globe, ainsi que l’emplacement de stockage de ces fichiers. Les formats GLB sont optimisés pour la vitesse de téléchargement et le temps de chargement lors de l’exécution, ce qui les rend plus faciles à utiliser dans les programmes de modélisation 3D mobiles et basés sur le Web. En outre, le glTF est développé pour être un format efficace, extensible et interopérable pour la transmission et le chargement de contenu 3D. Les objectifs du format comprennent des tailles de fichier compactes, un chargement rapide, une représentation complète de la scène 3D, une indépendance d’exécution et une extensibilité pour accompagner le développement ultérieur.

De même, le format FBX permet aux créateurs de partager des modèles 3D entre eux car il est efficace et stocke les modèles sous forme de données binaires. En raison de ces capacités, ces deux formats sont très populaires et nous pouvons avoir besoin d’interconversion. Dans cet article, nous allons aborder les sujets suivants plus en détail

API de traitement de fichiers 3D

Le traitement des fichiers 3D est devenu très pratique grâce à nos API REST Cloud. Vous pouvez désormais effectuer toutes les opérations de traitement et de conversion de fichiers 3D à l’aide de Aspose.3D Cloud. Afin de faciliter la tâche de nos clients, nous avons créé un wrapper Node.js autour du cloud Aspose.3D afin que toutes les fonctionnalités soient disponibles dans votre projet Node.js.

Installation et configuration

Pour utiliser le SDK Cloud, la première étape consiste à l’installer depuis NPM ou GitHub. Cependant, l’installation via npm est la plus simple. Veuillez exécuter la commande suivante pour effectuer l’installation

npm install aspose3dcloud --save

Veuillez noter que Aspose.3D Cloud SDK pour Node.js nécessite Node.js 4.8.7 ou supérieur.

Une fois l’installation effectuée, l’étape principale suivante consiste à créer un compte en visitant Aspose.Cloud dashboard. La raison pour laquelle vous devez créer un compte est que nos API ne sont accessibles qu’aux personnes autorisées. Donc, si vous avez un compte GitHub ou Google, inscrivez-vous simplement. Sinon, cliquez sur le bouton Créer un nouveau compte et fournissez les informations requises. Connectez-vous maintenant au tableau de bord à l’aide des informations d’identification et développez la section Applications du tableau de bord et faites défiler vers le bas jusqu’à la section Informations d’identification du client pour voir les détails de l’ID client et du secret client.

Informations d'identification du client

Conversion de GLB en PLY dans Node.js

Afin d’effectuer la conversion du fichier GLB au format PLY, veuillez suivre les instructions ci-dessous :

  • La première étape consiste à créer une instance de ThreeDCloudApi tout en fournissant les détails de l’ID client et du secret client comme arguments.
  • Deuxièmement, créez un objet de classe postConvertByFormatRequest.
  • Définissez le nom du fichier GLB d’entrée à l’aide de la propriété name de la classe postConvertByFormatRequest.
  • Afin de spécifier le format résultant, veuillez utiliser la propriété newformat.
  • Maintenant, afin de définir le nom du fichier résultant, veuillez utiliser la propriété newfilename de postConvertByFormatRequest.
  • Enfin, appelez la méthode postConvertByFormat(…) de ThreeDCloudApi tout en passant l’instance postConvertByFormatRequest comme argument pour lancer l’opération de conversion.
const { ThreeDCloudApi, postConvertByFormatRequest } = require("aspose3dcloud");

// Obtenez votre ClientId et ClientSecret sur https://dashboard.aspose.cloud (inscription gratuite requise).
const clientId = "718e4235-8866-4ebe-bff4-f5a14a4b6466";
const secret = "388e864b819d8b067a8b1cb625a2ea8e";

// créer une instance d'API ThreeD Cloud
const threeDCloudApi = new ThreeDCloudApi(clientId, secret);

    // créer un objet de requête ConvertByFormat
    var req = new postConvertByFormatRequest()
    
    // spécifier le nom du fichier glb d'entrée
    req.name = "Wolf-Blender-2.82a.glb";
    
    // format de fichier pour le fichier résultant
    req.newformat = "ply";

    // nom du fichier résultant
    req.newfilename = "Wolf-Blender-2.82a.ply";

    req.folder = null;

    // remplacer le fichier s'il existe déjà sur le stockage cloud
    req.isOverwrite = true;
    req.storage = null;

    try {
        // effectuer des opérations de conversion de documents
    return threeDCloudApi.postConvertByFormat(req)
      .then((result) => {
	    
            // imprimer le message de réussite sur la console
            console.log("Successfully converted..");
	});
}
catch (e) {
    console.log("entering catch block");
    console.log(e);
    console.log("leaving catch block");
}

Les fichiers d’exemple utilisés dans l’exemple ci-dessus sont disponibles à des fins de test sur les liens suivants

Convertir GLB en FBX à l’aide de la commande cURL

Aspose.3D Cloud est tellement incroyable que vous pouvez effectuer la conversion de GLB ou d’un autre format vers n’importe quel autre format pris en charge, y compris FBX, avec une seule commande cURL. Comme mentionné dans la section ci-dessus, vous pouvez utiliser le même code et effectuer la conversion en modifiant simplement l’extension du format du fichier de sortie et l’API fera le reste du travail. Cependant, avant d’accéder aux API sur le terminal de ligne de commande, veuillez noter que nous devons d’abord générer un jeton d’accès JWT basé sur les détails de l’ID client et du secret client, car les API ne sont accessibles qu’aux personnes autorisées.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=718e4235-8866-4ebe-bff4-f5a14a4b6466&client_secret=388e864b819d8b067a8b1cb625a2ea8e" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Une fois le jeton JWT généré, accédez à l’API PostConvertByFormat pour effectuer la conversion GLB en FBX.

curl -X POST "https://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Wolf-Blender-2.82a.glb&newformat=fbx&newfilename=ConvertedFile.fbx&IsOverwrite=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Conclusion

Cet article explique les concepts liés aux formats de fichiers 3D populaires dans d’autres formats pris en charge à l’aide de Aspose.3D Cloud API. Dans cet article, nous avons abordé les étapes de conversion de fichiers à l’aide d’un extrait de code Node.js ainsi que de la commande cURL. Outre les formats évoqués ci-dessus, l’API est capable de charger et d’enregistrer la sortie dans d’autres formats de fichiers 3D et les détails associés peuvent être trouvés dans Formats de documents pris en charge.

Veuillez noter qu’avec un abonnement gratuit, vous pouvez effectuer 150 demandes de traitement de documents et une fois que vous êtes satisfait de l’API, vous pouvez envisager d’acheter un abonnement de licence qui peut coûter jusqu’à 0,005 $/appel API. Pour plus de détails, veuillez consulter la page Tarifs. Si vous rencontrez des problèmes lors de l’utilisation de l’API ou si vous avez des questions connexes, n’hésitez pas à nous contacter via le forum d’assistance produit gratuit.

Article connexe

Nous vous recommandons également de visiter les liens suivants pour découvrir plus de fonctionnalités sur