1. Tuotteet
  2.   3D
  3.   Node.js
  4.   glTF-Transform
 
  

Avoimen lähdekoodin Node.js SDK 3D glTF -mallien käsittelyyn

Johtava avoimen lähdekoodin Node.js 3D SDK mahdollistaa ohjelmistokehittäjille glTF 3D -mallien lukemisen, kirjoittamisen, muokkaamisen, optimoinnin ja manipuloinnin Node.js-sovelluksissa.

Mikä on glTF-Transform?

3D‑grafiikan ja digitaalisen sisällön maailma on jatkuvasti muuttumassa. Ohjelmistokehittäjille ja taiteilijoille oikeiden työkalujen omaaminen on ratkaisevan tärkeää. Yksi työkalu, joka on saanut paljon huomiota, on glTF‑Transform‑kirjasto. Don McCurdy:n luoma tämä avoimen lähdekoodin projekti on pelin muuttaja. Se auttaa ohjelmistokehittäjiä ja taiteilijoita käsittelemään kaikkia 3D‑geometrian prosessoinnin haasteellisia puolia. glTF‑muoto, joka tarkoittaa GL Transmission Formatia, on Khronos Groupin luoma standardi. Se keskittyy tehokkaaseen 3D:n siirtämiseen ja 3D‑kohtauksien ja mallien lataamiseen Node.js‑sovelluksissa.

Jos olet kiinnostunut 3D-grafiikan luomisesta glTF-muodossa, glTF-Transform-kirjasto on sinulle välttämätön työkalu. Se on loistava verkkokäyttöön, koska se pitää asiat kevyinä ja yksinkertaisina. Tämä työkalu pystyy käsittelemään kaikenlaisia 3D-sisältöjä, kuten tekstuureja, animaatioita ja shader-ohjelmia. Lisäksi se auttaa pienentämään glTF-tiedostojen kokoa heikentämättä visuaalista laatua. Näin latausajat nopeutuvat ja suorituskyky paranee verkkosivuillasi. Lisäksi se muuntaa ja parantaa omaisuuksia vaivattomasti eri pelimoottoreihin ja alustoihin. Sen laaja ominaisuusvalikoima, käyttäjäystävällinen käyttöliittymä ja avoimen lähdekoodin suunnittelu tekevät siitä ensisijaisen valinnan 3D-omaisuuksien hienosäätöön ja muuntamiseen. Yleisesti ottaen glTF-Transform-kirjasto on arvokas työkalu 3D-malleja glTF-muodossa käsitteleville henkilöille.

Previous Next

Aloittaminen glTF-Transformin kanssa

Helpoin tapa asentaa glTF-Transformin vakaa julkaisu on npm:n käyttö. Käytä seuraavaa komentoa sujuvan asennuksen varmistamiseksi.

Asenna glTF-Transform npm:n kautta

npm install --global @gltf-transform/cli 

Asenna glTF-Transform GitHubin kautta.

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

Voit ladata käännetyn jaetun kirjaston Github-varastosta.

Lue ja kirjoita glTF‑kohtauksia Node.js:ssä

Avoimen lähdekoodin glTF-Transform SDK tekee ohjelmistokehittäjille helppoa luoda uusia glTF-skenaarioita alusta alkaen tai ladata ja lukea olemassa olevia skenaarioita omissa Node.js-sovelluksissaan. Kirjasto tukee olemassa olevien skenaarioiden muokkaamista, glTF-tiedoston pakkaamista, materiaalien ominaisuuksien muokkaamista, solmuhierarkioiden säätämistä jne. Tässä on yksinkertainen esimerkki, joka näyttää, miten ohjelmistokehittäjät voivat ladata olemassa olevan glTF-tiedoston, päivittää sen ja tallentaa muokatun glTF-tiedoston haluamaansa paikkaan Node.js-sovelluksissa.

Kuinka ladata ja tallentaa muokattu glTF‑tiedosto Node.js‑sovelluksissa?

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);

glTF‑tiedostojen pakkaus ja optimointi Node.js:ssä

Avoimen lähdekoodin glTF-Transform SDK on erittäin ominaisuuksiltaan rikas ja mahdollistaa ohjelmistokehittäjille glTF-tiedostojen pakkaamisen sekä optimoinnin omassa Node.js-ympäristössään. Vain muutamalla koodirivillä kirjasto voi merkittävästi pienentää niiden kokoa säilyttäen visuaalisen laadun. Tämä on ratkaisevan tärkeää suorituskyvyn parantamiseksi, erityisesti web-sovelluksissa, joissa latausajat ja kaistanleveys ovat kriittisiä. Seuraava esimerkki osoittaa, miten ohjelmistokehittäjät voivat pakata olemassa olevia glTF-tiedostoja niiden koon pienentämiseksi Node.js-sovelluksissa.

Kuinka pakata glTF‑tiedosto optimoidakseen sen koon Node.js‑sovelluksissa?

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);

glTF‑tiedostojen muuntaminen ja muokkaus Node.js:ssä

glTF-muoto, jonka on kehittänyt Khronos Group, on rojaltivapaa standardi 3D-omaisuuksien toimitukseen. Se on optimoitu tehokkaaseen 3D-kohtausten ja mallien siirtoon ja lataukseen. glTF-Transform SDK mahdollistaa laajat muokkaukset glTF-tiedostoihin, mukaan lukien soluhierarkioiden muuttaminen, materiaalien ominaisuuksien muokkaaminen, animaatioiden säätäminen ja niin edelleen. Nämä ominaisuudet antavat kehittäjille joustavuutta räätälöidä 3D-omaisuuksia vastaamaan erityistarpeita. Seuraava esimerkki näyttää, miten ohjelmistokehittäjät voivat säätää soluhierarkioita omissa Node.js-sovelluksissaan.

Kuinka säätää solmuhierarkioita Node.js‑sovelluksissa?

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);

glTF 3D -tiedostojen muuntaminen Node.js:n sisällä

glTF-Transform SDK tukee täysin glTF-tiedostojen muuntamista eri versioiden ja laajennusten välillä Node.js-sovelluksissa. Tämä ominaisuus on erityisen hyödyllinen varmistettaessa yhteensopivuutta eri alustojen ja sovellusten kanssa. Kirjasto voi myös viedä glTF-tiedostoja muihin tiedostomuotoihin, mikä helpottaa laajempaa käyttöä ja integrointia.

 Suomen