在OpenGL中将数据上载到多采样纹理
我想将数据从CPU上传到OpenGL中的多样本2D纹理。对于2D纹理,我可以使用以下功能:在OpenGL中将数据上载到多采样纹理,opengl,Opengl,我想将数据从CPU上传到OpenGL中的多样本2D纹理。对于2D纹理,我可以使用以下功能: void glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); 将数据从像素推送到纹理。如何对多采样2D纹理执行相同的操作?您无法通过Ope
void glTexSubImage2D( GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
const GLvoid * pixels);
将数据从像素推送到纹理。如何对多采样2D纹理执行相同的操作?您无法通过OpenGL的客户端访问多采样纹理的图像数据。唯一的解决方法是使用着色器和/或FBO 从概念上讲,可以将全屏四边形渲染为多采样纹理,并在片段着色器中,使用
gl_SampleID
确定当前正在写入的采样。结合gl\u FragCoord
,您可以例如索引到TBO中,该TBO保存您要存储在纹理中的每采样原始值
然而,由于样品位置完全在德国劳埃德船级社的控制之下,因此该操作是否有用值得怀疑。YMMV.您的数据是否包含每个样本的值?还是仅每像素?它具有每个样本的数据。