收藏
回答

webgl渲染在开发者工具有效,真机预览白屏或黑屏?

代码片段:https://developers.weixin.qq.com/s/1xQzcpmm70qo

开发者工具编译能看到最后的渲染效果。

真机(小米11,微信8.0.3开发者版)预览则出现白屏或黑屏,无报错。

回答关注问题邀请回答
收藏

2 个回答

  • 社区技术运营专员-Jahozheng
    社区技术运营专员-Jahozheng
    2021-05-19

    测试真机预览可以看到尝试下清理缓存重新编译试试

    2021-05-19
    有用
    回复 3
    • 介质
      介质
      2021-05-19
      这个是video的,第一个video和第二个canvas 2d都能够成功加载,第三个canvas webgl真机预览无法渲染。
      2021-05-19
      回复
    • 介质
      介质
      2021-05-19
      2021-05-19
      回复
    • 介质
      介质
      2021-05-19
      图1是真机预览,图2是模拟器渲染,点击init按钮之后的画面。
      2021-05-19
      回复
  • 介质
    介质
    2021-05-19

    已解决!

    WebGLRenderingContext.texImage2D()支持多种方式调用。

    微信开发者工具支持void gl.texImage2D(target, level, internalformat, format, type, ImageData? pixels)调用,但在真机上预览就会指定二维纹理失败,也无报错信息。

    更换void gl.texImage2D(target, level, internalformat, width, height, border, format, type, ArrayBufferView? pixels)方式调用,在微信开发者工具和真机预览上均成功。

    // gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, imgData);
    gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, imgData.width, imgData.height, 0, gl.RGBA, gl.UNSIGNED_BYTE, new Uint8Array(imgData.data))
    
    2021-05-19
    有用
    回复
登录 后发表内容