下面的函数可以从颜色缓冲区获得图象,拷贝到纹理内存中:
glCopyTexImage2D
glCopyTexSubImage2D
注意,颜色缓冲区的格式必须和纹理的格式一致才能拷贝成功
3D纹理
可以把3D纹理理解为由多个2D纹理组成的切片,通过(s,t,r)来定位使用纹理的哪个texel,载入3D纹理的函数是
void glTexImage3DOES(GLenum target, GLint level,
GLenum internalFormat, GLsizei width,
GLsizei height, GLsizei depth,
GLint border, GLenum format,
GLenum type, const void* pixels),
在使用3d纹理之前还须使能:#extension GL_OES_texture_3D : enable, 在fragment shader中使用3d纹理的功能 像下面这样调用函数:
vec4 texture3D(sampler3D sampler, vec3 coord[,float bias])。还有一系列函数支持压缩3d纹理,指定r方向纹理的WRAP方式,从缓冲区中拷贝到指定slice中