我已经使用过glTexSubImage2d,我知道它有助于部分填充图像(纹理),但我们可以使用glframebuffertexture2d来提高性能。 或者只是有什么不同,建议使用哪一个?
答案 0 :(得分:1)
glTexSubImage2D
将一些数据复制到纹理的子矩形
glFramebufferTexture2D
将纹理附加到帧缓冲区
这2个功能完全不相关,用于完全不同的目的。
帧缓冲是你可以渲染的附件集合(假设你的gpu /驱动程序支持你附加的附件组合。你可以通过制作帧缓冲,附加内容来确定它们是否受支持,然后调用glCheckframebufferStatus
。如果它返回GL_FRAMEBUFFER_COMPLETE
,那么您可以渲染到该附件组合
您已经完成了一项可以渲染到该帧缓冲区(有效渲染到其附件中)。这是否比上传数据更快取决于您。这真的取决于你的数据。 Framebuffers通常用于在运行时为阴影,环境贴图,后期处理效果的各种数据等生成纹理......