Three.js: GLTFLoader ImageBitmapLoader substitui os carregadores de tipos que ele não pode manipular

Criado em 25 jun. 2020  ·  3Comentários  ·  Fonte: mrdoob/three.js

Descrição do problema

Devido ao uso recentemente adicionado de BitmapLoader no GLFTLoader (https://github.com/mrdoob/three.js/pull/19518), o uso de manipuladores para formatos de arquivo específicos será substituído pelo BitmapLoader.

No r117 para suportar texturas de base para arquivos gltf, você só precisa adicionar

var basisLoader = new BasisTextureLoader();
basisLoader.setTranscoderPath( 'js/libs/basis/' );
basisLoader.detectSupport( renderer );
THREE.DefaultLoadingManager.addHandler( /\.basis$/, basisLoader );

Isso não é mais possível, pois a resolução será substituída aqui: https://github.com/mrdoob/three.js/blob/7df06a0e4054247f87a7b5aa555ca97cd6b15662/examples/jsm/loaders/GLTFLoader.js#L2077 -L2093

Estou recebendo o seguinte erro:

THREE.WebGLState: TypeError: Failed to execute 'texImage2D' on 'WebGL2RenderingContext': No function was found that matched the signature provided.
    at Object.texImage2D (three.module.js:21828)
    at uploadTexture (three.module.js:22749)
    at setTexture2D (three.module.js:22274)
    at WebGLTextures.safeSetTexture2D (three.module.js:23169)
    at SingleUniform.setValueT1 [as setValue] (three.module.js:17755)
    at Function.WebGLUniforms.upload (three.module.js:18260)
    at setProgram (three.module.js:26406)
    at WebGLRenderer.renderBufferDirect (three.module.js:25441)
    at renderObject (three.module.js:25994)
    at renderObjects (three.module.js:25966)
Versão Three.js
  • [x] Dev
  • [x] r118
  • [] r117
Navegador
  • [ ] Todos eles
  • [x] Chrome
  • [ ] Raposa de fogo
  • [ ] Borda
SO
  • [x] Todos eles
  • [ ] Janelas
  • [ ] Mac OS
  • [] Linux
  • [] Android
  • [] iOS
Requisitos de hardware (placa gráfica, dispositivo VR, ...)
Bug Loaders

Comentários muito úteis

@ Mugen87 Sim, isso resolve o meu problema. Muito obrigado cuidando do bug tão rápido!

Todos 3 comentários

O mesmo erro ocorre com um dos exemplos oficiais ao usar a extensão glTF-dds :

https://threejs.org/examples/webgl_loader_gltf_extensions

@JohannesDeml Você pode verificar se o PR vinculado resolve seu problema? Pelo menos eu poderia consertar o exemplo DDS com ele ^^.

@ Mugen87 Sim, isso resolve o meu problema. Muito obrigado cuidando do bug tão rápido!

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Horray picture Horray  ·  3Comentários

boyravikumar picture boyravikumar  ·  3Comentários

Bandit picture Bandit  ·  3Comentários

danieljack picture danieljack  ·  3Comentários

clawconduce picture clawconduce  ·  3Comentários