Estoy tratando de incrustar modelos 3D en el navegador con Babylon.JS. El código que funciona perfectamente en el patio de recreo de babilonia no se ejecutará en mi máquina local. Estoy usando este ejemplo: https://playground.babylonjs.com/#JUKXQD
Luego descargué el archivo como zip y ejecuté index.html en mi navegador. Me muestra una pantalla morada en blanco. He estado intentando esto por un tiempo y parece que no puedo importar el código de mi máquina local. Cuando construyo modelos 3D con el script que se muestra bien en el navegador de mi computadora portátil.
Balyon debe descargar el activo del cráneo en la vista; sin embargo, al ejecutar un archivo local, se encontrará con el problema de solicitud de CORS:
Access to XMLHttpRequest at 'file:///C:/Users/user/Downloads/sample/scenes/skull.babylon' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, chrome-untrusted, https. babylon.js:16 BJS - [11:28:23]: Unable to load from scenes/skull.babylon: importMesh of undefined from undefined version: undefined, exporter version: undefinedimportMesh has failed JSON parse
Por lo tanto, la escena funciona, pero no se produjo la descarga.
Para corregir esto, cargue un "servidor" para ejecutar la aplicación frontend, como un servidor python (o cualquier cosa que pueda servir el index.html)
Downloads> cd sample Downloads\sample> py -m http.server Serving HTTP on :: port 8000 (http://[::]:8000/) ... ::1 - - [19/Oct/2021 11:27:58] "GET / HTTP/1.1" 200 - ::1 - - [19/Oct/2021 11:27:59] "GET /scenes/skull.babylon HTTP/1.1" 200 -
Navegue a la dirección proporcionada http://localhost:8000/
y debería funcionar ahora (puede ver la solicitud GET del activo del cráneo)