Soy nuevo en javascript y programación en general. Me gustaría usar esto: https://github.com/CesiumGS/gltf-pipeline Es una herramienta para convertir modelos en formatos comprimidos. Este es mi código:
const gltfPipeline = require("gltf-pipeline"); const fsExtra = require("fs-extra"); const processGltf = gltfPipeline.processGltf; const gltf = fsExtra.readJsonSync("model.gltf"); const options = { dracoOptions: { compressionLevel: 10, }, separateTextures: true, }; processGltf(gltf, options).then(function (results) { fsExtra.writeJsonSync("modeldraco.gltf", results.gltf); console.log('done'); const separateResources = results.separateResources; for (const relativePath in separateResources) { if (separateResources.hasOwnProperty(relativePath)) { const resource = separateResources[relativePath]; fsExtra.writeFileSync(relativePath, resource); } } }); Copié este archivo, lo guardé como compress.js (porque rima) y luego lo ejecuté con node compress.js : así es como ejecutaría un archivo python.
El error es: Cannot find module 'gltf-pipeline' que tiene sentido. Así que lo hice:
node -r gltf-pipeline compress.js pero recibo el mismo error.
Entonces, me mudé a HTML/JS, donde creé un archivo index.html y lo vinculé con una etiqueta <script> compress.js y el gltf-pipeline index.js . Estos son los errores:
index.js:3 Uncaught ReferenceError: module is not defined at index.js:3 (anonymous) @ index.js:3 compress.js:3 Uncaught ReferenceError: require is not definedEntonces, ¿cómo se hace esto? Sería útil como una página web o una línea de comandos. Por cierto, esta es mi estructura de carpetas, tal vez ese sea el problema.
basefolder| |- gltf-pipeline| library files in here |- compress.js |- index.html |- model.gltfgltf-pipeline funciona cuando se usa como una herramienta de línea de comandos.
No puedes hacer eso con Javascript.
JS se sirve al cliente.
Mientras que NodeJS se ejecuta en un servidor.
Estas son las diferencias entre nodo y navegador JS.
también para el error del módulo intente
npm install gltf-pipelineMire NPM para instalar paquetes de nodos También eche un vistazo al tutorial de NodeJS