无法在我本地计算机上的浏览器中从 babylon.js 获取 运行 文件

Cannot run files from babylon.js in the browser on my local machine

我正在尝试使用 Babylon.JS 在浏览器中嵌入 3D 模型。 运行 在 babylon playground 上完美的代码在我的本地机器上不会 运行。我正在使用这个例子:https://playground.babylonjs.com/#JUKXQD

然后我将文件下载为 zip 文件并 运行 index.html 在我的浏览器中。它向我展示了一个空白的紫色屏幕。我已经尝试了一段时间,它似乎无法从我的本地机器导入代码。当我使用在笔记本电脑的浏览器中显示良好的脚本构建 3D 模型时。

Bablyon 必须下载 头骨资产到视图中,但是当 运行 连接本地文件时,您将 运行 进入 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

因此场景正常,但没有下载。

要更正此问题,请将“服务器”加载到 运行 前端应用程序 - 例如 python 服务器(或任何可以为 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 -

导航到给定的地址 http://localhost:8000/ 现在应该可以使用了(您可以看到头骨资产 GET 请求)