如何在opengl es中绘制调用时检索纹理状态(纹素)?

时间:2012-02-02 08:07:58

标签: opengl-es textures

如何在opengl es中绘制调用时检索纹理RGB值?

如何获取指向纹素的指针,或属于特定纹理的像素?

glGetTexParameter似乎没有提供检索单个纹素,纹理颜色状态的选项吗?

1 个答案:

答案 0 :(得分:1)

由于ES不支持glGetTexImage,唯一可能的方法是将纹理一对一地渲染到屏幕上(即通过渲染屏幕大小的纹理四边形)并使用{检索屏幕{1}}。

但我确定你真的不需要检索纹理图像,因为你是首先设置它(使用glReadPixels),所以你已经知道了图像(让它在一些CPU内存缓冲区),无论如何都没有改变,因为你设置了它。您也不想检索它,因为这将是图像的GPU-CPU副本(大量数据),这非常昂贵。

请记住,纹理图像自您自己设置后没有变化。如果它有,那么只是因为你在纹理中渲染了一些东西(通过使用FBO或glTexImage2D),在这种情况下你可以从屏幕上抓取它(或者将它渲染成渲染缓冲区而不是纹理),反正。