2017-10-19 163 views
1

新手在这里如此使用先发制人的道歉,如果我不使用正确的语言或指的是正确的东西。使用aframe加载图片

我正在使用下面的代码加载360image作为我的场景。

<a-scene> 
    <a-assets> 
    <img id="skyTexture" src="https://upload.wikimedia.org/wikipedia/commons/0/01/Hellbrunn_banqueting_hall_360_panoramic_view.jpg"> 
    </a-assets> 

    <a-sky src="#skyTexture"></a-sky>.... 

而且一切都很好。但是,当我测试它需要一段时间才能加载并在控制台中重复此消息。

THREE.WebGLRenderer: Texture marked for update but image is incomplete 

最终,它加载(有时!)

当我查找错误的解释网上,搜索给了我加载图像的其他选择,但我不能完全围绕让我的头它。有没有一段代码示例来了解如何使用其他方法预加载?

在此先感谢

小号

回答

0

您的图像调用<a-sky>实体时尚未加载。

看看the A-Frame documentation,你会在那里找到一个例子。您需要将<img>标记为<a-assets>标记,以便A-Frame可以在创建天空之前确保加载它。

+0

你的图像差不多是20MB大。两个想法:在本地提供文件或使用较小的版本,我成功地尝试了1280px。 – oha

+0

是的,这是公平的,猜我想知道的是,如果有一些预加载代码的时候,当连接速度慢或图像很大 –