将BGL缓冲区转换为字节数python

时间:2019-01-09 05:55:09

标签: python byte buffer blender

我正在尝试将Blender Python中的bgl.Buffer对象转换为可以写入文件的字节,到目前为止,我不确定该怎么做?得到错误:“ TypeError:需要一个类似字节的对象,而不是'bgl.Buffer'”,代码为:

    draw_texture_2d(offscreen.color_texture, (10, 10), WIDTH, HEIGHT)
    buffer = bgl.Buffer(bgl.GL_BYTE, WIDTH * HEIGHT * 4)
    bgl.glReadBuffer(bgl.GL_BACK)
    bgl.glReadPixels(0, 0, WIDTH, HEIGHT, bgl.GL_RGBA, bgl.GL_UNSIGNED_BYTE, buffer)
    #g = 1
    p = "/tmp/" 
    #array = np.asarray(buffer, dtype=np.uint8)
  #  data = array.tobytes()
    #txt = data.decode(encoding='UTF-8')
    f = open(p + "file.txt", "wb")
    f.write(buffer)

    f.close()
    print(buffer)
如您在注释中看到的

,我尝试了一些其他方法,这些方法不起作用(按预期方式),所以我想知道是否存在某种方法可以将此bgl.Buffer写入文件/通过套接字发送很快

0 个答案:

没有答案