AFrame: a-image выдает ошибку при использовании изображения из ресурсов

Я пытаюсь добавить изображение в свою сцену с src, указывающим на один из элементов внутри тега ресурсов:

<a-assets>
    <a-asset-item id="shoot" src="/assets/icons/shoot.png"></a-asset-item>
</a-assets>

...
<a-image src="#shoot" 
    position="0 0 -0.2" 
    scale="0.05 0.05 0.05" 
    material="alphaTest: 0.5"></a-image>
...

И в консоли появляется следующая ошибка:

THREE.WebGLState: TypeError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': Overload resolution failed.
    at Object.texImage2D (aframe-master.js:27470)
    at uploadTexture (aframe-master.js:28387)
    at setTexture2D (aframe-master.js:27939)
    at WebGLTextures.safeSetTexture2D (aframe-master.js:28819)
    at SingleUniform.setValueT1 [as setValue] (aframe-master.js:23479)
    at Function.WebGLUniforms.upload (aframe-master.js:23938)
    at setProgram (aframe-master.js:32143)
    at WebGLRenderer.renderBufferDirect (aframe-master.js:30878)
    at renderObject (aframe-master.js:31625)
    at renderObjects (aframe-master.js:31595)
    at WebGLRenderer.render (aframe-master.js:31376)
    at HTMLElement.render (aframe-master.js:79612)
    at bound (aframe-master.js:83391)
    at onAnimationFrame (aframe-master.js:31231)
    at onAnimationFrame (aframe-master.js:21566)

Пытался загрузить и так, но не вышло:

<a-assets>
    <a-asset-item id="shoot" src="/assets/icons/shoot.png"></a-asset-item>
</a-assets>
<a-image src="/assets/icons/shoot.png" 
    position="0 0 -0.2" 
    scale="0.05 0.05 0.05" 
    material="alphaTest: 0.5"></a-image>

Но если я удалю элемент-актив, он сработает:

<a-image src="/assets/icons/shoot.png" 
    position="0 0 -0.2" 
    scale="0.05 0.05 0.05" 
    material="alphaTest: 0.5"></a-image>

Не могли бы вы посоветовать, что я делаю не так? Это ошибка?


person Nikita Fedorov    schedule 12.10.2020    source источник
comment
Без кода, который нужно запускать и отлаживать, будет сложно помочь. Поделитесь простым исполняемым кодом с помощью glitch.com/~aframe Помогите людям помочь вам   -  person Diego Marcos    schedule 12.10.2020


Ответы (2)


Да, аналогичную проблему я обнаружил два дня назад. На самом деле a-assets работает только тогда, когда вы запускаете его через сервер. Я решил это с помощью django.

person Sumit Kumar    schedule 13.10.2020
comment
На самом деле я использую сервер - person Nikita Fedorov; 13.10.2020

Виноват. Я должен был использовать img вместо тега a-asset-item

person Nikita Fedorov    schedule 13.10.2020