Поскольку ES не поддерживает glGetTexImage
, единственным возможным способом будет визуализация текстуры на экране один-к-одному (т. Е. Путем рендеринга текстурированного квадрата размером с экран) и извлечение экрана с помощью glReadPixels
.
Но я уверен, что вам на самом деле не нужно извлекать изображение текстуры, так как именно вы установили его в первую очередь (используя glTexImage2D
), так что вы уже знаете изображение (естьв буфере памяти процессора), и он не изменился с тех пор, как вы его установили.Вы также не хотите извлекать его, поскольку это будет копия изображения с GPU-CPU (большой набор данных), что довольно дорого.
Просто помните, что изображение текстуры не имеетизменения, так как вы установили его самостоятельно.И если это так, то только потому, что вы рендерили что-то в текстуру (используя FBO или glCopyTexImage2D
), и в этом случае вы можете просто захватить это с экрана (или визуализировать это в рендер-буфер вместо текстуры).