1. Des produits
  2.   3D
  3.   Node.js
  4.   glTF-Transform
 
  

SDK Node.js open source pour travailler avec des modèles 3D glTF

Un SDK 3D Node.js open source de premier plan permet aux développeurs de lire, écrire, éditer, optimiser et manipuler des modèles 3D glTF au sein d'applications Node.js.

Qu'est-ce que glTF-Transform ?

Le monde de la 3D et du contenu numérique évolue constamment. Pour les développeurs et les artistes, disposer des bons outils est essentiel. Un outil qui suscite beaucoup d'intérêt est la bibliothèque glTF-Transform. Créée par Don McCurdy, ce projet open source est révolutionnaire. Il aide les développeurs et les artistes à gérer tous les aspects complexes du traitement de la géométrie 3D. Le format glTF, qui signifie GL Transmission Format, est une norme créée par le Khronos Group. Il s'agit de transmettre efficacement des scènes et des modèles 3D dans les applications Node.js.

Si vous créez des graphiques 3D au format glTF, la bibliothèque glTF-Transform est un outil indispensable. Elle est idéale pour le web, car elle reste légère et simple. Cet outil peut gérer tous les types de contenu 3D tels que les textures, les animations et les shaders. De plus, il aide à réduire la taille des fichiers glTF sans compromettre le rendu visuel. Ainsi, il accélère les temps de chargement et améliore les performances de vos pages web. En outre, il convertit et améliore facilement les actifs pour divers moteurs de jeu et plateformes. Sa large gamme de fonctionnalités, son interface conviviale et son design open source en font le choix privilégié pour affiner et convertir les actifs 3D. En général, la bibliothèque glTF-Transform est un outil précieux pour les personnes travaillant avec des modèles 3D au format glTF.

Previous Next

Premiers pas avec glTF-Transform

Le moyen le plus simple d'installer la version stable de glTF-Transform est d'utiliser npm. Veuillez utiliser la commande suivante pour une installation fluide.

Installez glTF-Transform via npm

npm install --global @gltf-transform/cli 

Installez glTF-Transform via GitHub.

clone https://github.com/donmccurdy/glTF-Transform.git 

Vous pouvez télécharger la bibliothèque partagée compilée depuis le dépôt GitHub.

Lire et écrire des scènes glTF dans Node.js

Le SDK open source glTF-Transform facilite la création de nouvelles scènes glTF à partir de zéro ou le chargement et la lecture de scènes existantes dans leurs propres applications Node.js. La bibliothèque prend en charge la modification des scènes existantes, la compression d'un fichier glTF, la modification des propriétés des matériaux, l'ajustement des hiérarchies de nœuds, etc. Voici un exemple simple qui montre comment les développeurs peuvent charger un fichier glTF existant, le mettre à jour et enregistrer le fichier glTF modifié à l'emplacement de leur choix dans les applications Node.js.

Comment charger et enregistrer un fichier glTF modifié dans les applications Node.js ?

const { NodeIO } = require('@gltf-transform/io');

// Create an IO instance.
const io = new NodeIO();

// Load a glTF file.
const document = io.read('path/to/your/model.glb');

// Perform operations on the document...

// Save the modified glTF file.
io.write('path/to/your/output.glb', document);

Compression et optimisation des fichiers glTF dans Node.js

Le SDK open source glTF-Transform est très riche en fonctionnalités et permet aux développeurs de compresser ainsi que d'optimiser les fichiers glTF dans leur propre environnement Node.js. En quelques lignes de code seulement, la bibliothèque peut réduire considérablement leur taille tout en conservant la qualité visuelle. Cela est crucial pour améliorer les performances, notamment dans les applications web où les temps de chargement et la bande passante sont critiques. L'exemple suivant montre comment les développeurs peuvent compresser des fichiers glTF existants afin de réduire leur taille dans les applications Node.js.

Comment compresser un fichier glTF pour optimiser sa taille dans les applications Node.js ?

const { NodeIO } = require('@gltf-transform/io');
const { DracoMeshCompression } = require('@gltf-transform/extensions');
const { DracoMeshEncoder } = require('@gltf-transform/functions');

const io = new NodeIO();
const document = io.read('path/to/your/model.glb');

// Add Draco compression.
document.createExtension(DracoMeshCompression)
    .setRequired(true);

await document.transform(
    DracoMeshEncoder({ method: DracoMeshEncoder.Method.EDGEBREAKER })
);

io.write('path/to/your/output-compressed.glb', document);

Transformation et édition des fichiers glTF dans Node.js

Le format glTF, développé par le Khronos Group, est une norme libre de droits pour la livraison d'actifs 3D. Il est optimisé pour la transmission efficace et le chargement de scènes et modèles 3D. Le SDK glTF-Transform permet des modifications étendues des fichiers glTF, y compris la modification des hiérarchies de nœuds, la modification des propriétés des matériaux, l'ajustement des animations, etc. Ces capacités offrent aux développeurs la flexibilité de personnaliser les actifs 3D pour répondre à des besoins spécifiques. L'exemple suivant montre comment les développeurs peuvent ajuster les hiérarchies de nœuds dans leurs propres applications Node.js.

Comment ajuster les hiérarchies de nœuds dans les applications Node.js ?

const { NodeIO } = require('@gltf-transform/io');
const { DracoMeshCompression } = require('@gltf-transform/extensions');
const { DracoMeshEncoder } = require('@gltf-transform/functions');

const io = new NodeIO();
const document = io.read('path/to/your/model.glb');

// Add Draco compression.
document.createExtension(DracoMeshCompression)
    .setRequired(true);

await document.transform(
    DracoMeshEncoder({ method: DracoMeshEncoder.Method.EDGEBREAKER })
);

io.write('path/to/your/output-compressed.glb', document);

Conversion de fichiers 3D glTF dans Node.js

Le SDK glTF-Transform prend en charge la conversion complète des fichiers glTF entre différentes versions et extensions dans les applications Node.js. Cette fonctionnalité est particulièrement utile pour garantir la compatibilité avec diverses plateformes et applications. La bibliothèque peut également exporter des fichiers glTF vers d'autres formats de fichier, facilitant une utilisation et une intégration plus larges.

 Français