He usado THREE.js GLTFLoader para cargar el archivo glb, luego usé USDZ Exporter para exportarlo a usdz y luego, cuando intenté abrirlo en el navegador, se abrió en saferi pero no se mostró en arkit en modo objeto y en modo AR aparece arriba mi cabeza este es un archivo simple
https://drive.google.com/file/d/1uAZNZLWI-zdtjcetfT2tIBh9a0tyzGyi/view?usp=sharing
esta es mi prueba
const loader = new GLTFLoader().setPath(`${origin}${folderPath}`); loader.load(modelName, async function (gltf) { model = gltf.scene; scene.add(model); const exporter = new USDZExporter(); const arraybuffer = await exporter.parse(model ); const blob = new Blob([arraybuffer], { type: 'application/octet-stream' }); const link = document.getElementById('usdz-link'); link.style.display = '' link.href = URL.createObjectURL(blob);también he tratado de centrar el modelo glb por este código
const box = new THREE.Box3().setFromObject(gltf.scene); const center = box.getCenter(new THREE.Vector3()); var sceneCopy=gltf.scene.clone(); sceneCopy.position.x += (gltf.scene.position.x - center.x); sceneCopy.position.y += (gltf.scene.position.y - center.y); sceneCopy.position.z += (gltf.scene.position.z - center.z);y luego usé sceneCopy para exportar a usdz pero desafortunadamente esto no me ayudó
Creo que respondimos esto a través de Slack, pero lo volveré a publicar aquí para cerrar.
El desplazamiento del modelo debe estar cerca del origen para que aparezca correctamente en el visor de vista rápida en iPad/iPhone.
Puede configurar manualmente el desplazamiento cambiando estas tres líneas... https://github.com/wallabyway/quicklook-example/blob/6f1e1453b983e0effc4ad82b2eda5eac905865a9/alliedbim-piping.gltf#L1023-L1025
que es lo contrario de estos 3 valores:
lo opuesto a estos 3 valores: https://github.com/wallabyway/quicklook-example/blob/6f1e1453b983e0effc4ad82b2eda5eac905865a9/alliedbim-piping.gltf#L1044-L1046
Básicamente, cuando usa el filtrado en forge-convert-utils, la opción central no tiene en cuenta el desplazamiento.
Hay una solicitud de función de repositorio de GitHub para solucionar esto...
https://github.com/petrbroz/forge-convert-utils/issues/44
y una rama con una posible solución. https://github.com/petrbroz/forge-convert-utils/commit/bb4bd0a13c685c34966a3bf5c2784ba9b1343a7d