json three.js maya

Cómo convertir el objeto a archivo json para el cargador de modelo three.js



maya (6)

Al exportar 3ds max modelos a three.js utilizando el [convert_obj_three.py][1] , se puede lograr un pequeño grado de automatización con el siguiente comando en cmd promt:

cd C:/Python27 & python convert_obj_three.py -i _obj/chromeBand.obj -o _json/chromeBand.js & python convert_obj_three.py -i _obj/controlPanelCover.obj -o _json/controlPanelCover.js

Escribí un script de 3ds max que imprimirá el comando phyton script para varios modelos y también un json con los modelos relativos a las urls y las coordenadas. El json es útil para colocar múltiples modelos en la posición correcta en la escena.

( local inputPath = "D:/Archive/Work/_Dev/_Convert/Obj//" local outputPath = "C:/Server/htdocs/viewer/assets/models/my-project//" local jsonPath = "assets/models/my-project/" local myListEntry = "/n" for o in selection do ( myListEntry += "/"" + o.name + "/": {/n" + "/t/"url/": /"" + jsonPath + o.name + ".js/",/n" + "/t/"position/": {/n" + "/t/t/"x/": /"" + o.position.x as string + "/",/n" + "/t/t/"y/": /"" + o.position.z as string + "/",/n" + "/t/t/"z/": /"" + (o.position.y * -1) as string + "/"/n" + "/t}/n" + "},/n" ) myListEntry += "/n/n/n=== Run this using cmd promt: ===/n" myListEntry += "cd C:/Python27 &/n" for o in selection do ( myListEntry += "python D:/Archive/Work/_Dev/_Convert/convert_obj_three.py -i " + inputPath + o.name + ".obj -o " + outputPath + o.name + ".js & /n" ) myListEntry += "exit /n" print myListEntry actionMan.executeAction 0 "40472" )

  • Cree un nuevo archivo txt, cambie el nombre a coordinates.mcr y arrastre y suelte el archivo en la ventana 3ds max. Abrirá automáticamente la ventana de MaxScript Listener e imprimirá los resultados. Copie y pegue el comando python en cmd. Use el json impreso para cargar por lotes sus modelos en su proyecto.
  • Además, los scripts se pueden asignar a botones en las barras de herramientas 3dsMax, para un acceso rápido.
  • La secuencia de comandos anterior podría usar ajustes adicionales. No es la mejor solución, pero al menos acelera las cosas, con suerte.
  • Utilice el script de Jos Balcaen para exportar archivos obj en lote (3ds Max)

Editar:

Después de experimentar un poco con el script, hice una configuración que me permite exportar mis modelos (contando más de 20) en menos de 1 minuto desde 3ds max hasta abrir la pestaña del navegador. Por supuesto, puede que necesite ajustar la salida json a su gusto. Espero que encuentres esto útil.

Estoy construyendo un juego de navegador con three.js y quiero cargar un modelo de Maya 2013 en mi escena. He exportado el modelo como un archivo obj.

Ahora necesito saber cómo convertirlo en un archivo JS para el three.js three.js.

Este es mi cargador hasta el momento:

var jsonLoader = new THREE.JSONLoader(); jsonLoader.load( "models/model.js", addModelToScene );

Gracias por adelantado




Si no desea usar blender, mrdoob (made threejs) tiene un script de python simple para convertir obj a json. Simplemente ejecute este guión en la terminal de la siguiente manera:

python convert_obj_three.py -i infile.obj -o outfile.js



Cree un archivo de Python llamado conversion.py con el siguiente contenido: haga clic aquí para verlo .

Y luego ejecuta este comando en tu Terminal:

python conversion.py -i file.obj -o file.js