收藏
回答

2d离屏无法渲染到webgl主屏

框架类型 问题类型 操作系统 工具版本
小游戏 Bug macOS 预发布版 RC Build (1.02.1912261) 稳定版 Stable Build (1.02.1911180)

var gl = canvas.getContext('2d');

gl.wxBindCanvasTexture(gl.TEXTURE_2D, this.canvas2);


这个wxBindCanvasTexture不能用了吗?

Uncaught TypeError: gl.wxBindCanvasTexture is not a function 这个错误。


我们需求是想自己用2d离屏,渲染到webgl主屏里面,还是说直接canvas全局变量是错的?我们用的是egret引擎,webgl渲染。


以上代码直接运行可测试出来



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

2 个回答

  • HS
    HS
    2019-12-30

    打印一下是否 gl 是 null?

    2019-12-30
    有用
    回复 8
    • 啊乐
      啊乐
      2019-12-30
      var gl = canvas.getContext('webgl');这一行不为空,有对象的


      gl = canvas.getContext('2d')是空的,因为egret用的渲染模式是webgl,我尝试过在egret里面把rendermode改为canvas,那gl = canvas.getContext('webgl')就是空。
      2019-12-30
      回复
    • 啊乐
      啊乐
      2019-12-30
      2019-12-30
      回复
    • 啊乐
      啊乐
      2019-12-30
      export default class CA {
        canvas2 = null;
        ctx2 = null;
        aniId = null;
        loop = function () {
          window.cancelAnimationFrame(this.aniId)
          var gl = canvas.getContext('webgl');
          if(gl instanceof WebGLRenderingContext){
            console.log("true");
          }else{
            console.log("false");
          }
          gl.wxBindCanvasTexture(gl.TEXTURE_2D, this.canvas2)
          this.aniId = window.requestAnimationFrame(
            this.loop.bind(this)
          )
        }


        init() {
          console.log("canvas2");
          this.canvas2 = wx.createCanvas()
          this.ctx2 = this.canvas2.getContext('2d')
          this.ctx2.fillStyle = 'green';
          this.ctx2.fillRect(0, 100, 100, 100);


          this.aniId = window.requestAnimationFrame(
            this.loop.bind(this)
          )
        }
      }


      var t = new CA();
      t.init();
      2019-12-30
      回复
    • HS
      HS
      2019-12-30回复啊乐
      目前开发者工具还没有实现 wxBindCanvasTexture 方法,建议写条件判断一下存在性
      2019-12-30
      回复
    • 啊乐
      啊乐
      2019-12-30
      好吧,请问有什么办法可以实现同样的需求呢?
      2019-12-30
      回复
    查看更多(3)
  • 啊乐
    啊乐
    2019-12-30

    不知道官方是否有看问题,看论坛列表,前后的问题都回答了,就我这个在中间的跨过去了,哭!

    2019-12-30
    有用
    回复 4
登录 后发表内容
问题标签