我有两个纹理,一个绑定到GL_TEXTURE_EXTERNAL_OES目标,YUV格式的像素,第二个是空的并绑定到GL_TEXTURE_2D目标。
如何在第二个纹理中显示第一个纹理的内容?
答案 0 :(得分:1)
如果您可以访问OpenGL ES 3.2,EXT_copy_image,OES_copy_image或APPLE_copy_texture_levels,那么您可以使用由这些定义的相应复制命令复制图像数据规格。无法保证能够执行此操作,因为这些规范都没有定义与OES_EGL_image_external提供的格式的交互。
因此,即使您有权访问该命令,它也可能无法用于外部图像。
如果这些都不可用或者它不起作用,那么你唯一的办法是将2D纹理绑定到帧缓冲区并渲染到它,将外部纹理作为片段着色器中的源数据读取。
话虽这么说,外部图像的整点是避免这样的副本。你还没有说明你想要做什么,所以没有我真正能给出的建议。您可能希望查看OES_EGL_image而不是外部图像。