конвертировать BGL Buffer в байты Python - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь преобразовать объект bgl.Buffer в Python Blender в байты, которые могут быть записаны в файл, до сих пор я не уверен, как это вообще сделать? Получение ошибки: «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 в файл / отправить его через сокет очень быстро

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...