如何在编辑器中引用文件?

时间:2019-05-25 17:57:44

标签: babylonjs

我使用纹理查看器将纹理添加到编辑器中,它们在“文件”选项卡下显示为"MySkyboxTexture_px.png", "MySkyboxTexture_py.png"等,但是如何在脚本中引用它们呢?即他们走的路是什么? 我尝试了多种组合,例如./textures/MySkyboxTexture./MySkyboxTexture等-无效。

skyboxMaterial.reflectionTexture = new BABYLON.CubeTexture(
    "MySkyboxTexture",  // <--- what do i put here?
    scene, ["_px.png", "_py.png", "_pz.png", "_nx.png", "_ny.png", "_nz.png"]
);

调试器显示file not found at ...BabylonJS Editor/resources/app.asar/MySkyboxTexture_px.png

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式导入图像:

  • 您只需在函数中提供本地路径,该路径必须始于应用程序的根目录,例如:

     -src/
     -index.js
     -assets/
         -file.png
     -style/
         -style.css
    

然后,如果要导入file.png,则只需提供URL:/assets/file.png

  • 提供URL的另一种方法是先将文件导入为Blob,然后通过执行以下操作创建Blob URL(它可以是来自服务器的远程Blob,也可以是本地Blob):
const url = URL.createObjectURL(myImportedBlob);

然后使用url作为函数的参数。