glCopyTexImage1D 函数
glCopyTexImage1D 函数将帧缓冲区中的像素复制到一维纹理图像中。
语法
void WINAPI glCopyTexImage1D(
GLenum target,
GLint level,
GLenum internalFormat,
GLint x,
GLint y,
GLsizei width,
GLint border
);
参数
-
目标
-
将更改其图像数据的目标。 必须具有值GL_TEXTURE_1D。
-
level
-
详细信息级别编号。 级别 0 是基础映像。 级别 n 是 第 n个 mipmap 缩减图像。
-
internalFormat
-
纹理数据的内部格式和分辨率。 此参数必须是以下符号值之一。
常数 R 位 G 位 B 位 A Bits L 位 I 位 GL_ALPHA GL_ALPHA4 4 GL_ALPHA8 8 GL_ALPHA12 12 GL_ALPHA16 16 GL_LUMINANCE GL_LUMINANCE4 4 GL_LUMINANCE8 8 GL_LUMINANCE12 12 GL_LUMINANCE16 16 GL_LUMINANCE_ALPHA GL_LUMINANCE4_ALPHA4 4 4 GL_LUMINANCE6_ALPHA2 2 6 GL_LUMINANCE8_ALPHA8 8 8 GL_LUMINANCE12_ALPHA4 4 12 GL_LUMINANCE12_ALPHA12 12 12 GL_LUMINANCE16_ALPHA16 16 16 GL_INTENSITY GL_INTENSITY4 4 GL_INTENSITY8 8 GL_INTENSITY12 12 GL_INTENSITY16 16 GL_RGB GL_R3_G3_B2 3 3 2 GL_RGB4 4 4 4 GL_RGB5 5 5 5 GL_RGB8 8 8 8 GL_RGB10 10 10 10 GL_RGB12 12 12 12 GL_RGB16 16 16 16 GL_RGBA GL_RGBA2 2 2 2 2 GL_RGBA4 4 4 4 4 GL_RGB5_A1 5 5 5 1 GL_RGBA8 8 8 8 8 GL_RGB10_A2 10 10 10 2 GL_RGBA12 12 12 12 12 GL_RGBA16 16 16 16 16 -
x
-
要复制的像素行左下角的窗口 x 平面坐标。
-
y
-
要复制的像素行左下角的窗口 y 平面坐标。
-
width
-
纹理图像的宽度。 对于整数 n,必须为零或 2n + 2 (边框) 。 纹理图像的高度为 1。
-
边境
-
边框的宽度。 必须为零或 1。
返回值
此函数不返回值。
错误代码
glGetError 函数可以检索以下错误代码。
名称 | 含义 |
---|---|
|
target 不是接受的值。 |
|
level 小于零或大于 log2 max,其中 max 是GL_MAX_TEXTURE_SIZE的返回值。 |
|
边框 不是零或 1。 |
|
width 小于零,大于 2 + GL_MAX_TEXTURE_SIZE,或 宽度 不能表示为 2n + (边框) 某些整数 n。 |
|
函数是在 对 glBegin 的调用和对 glEnd 的相应调用之间调用的。 |
备注
glCopyTexImage1D 函数使用当前帧缓冲区中的像素定义一维纹理图像,而不是像 glTexImage1D 那样使用main内存中的像素。
使用通过 级别指定的 mipmap 级别,纹理数组定义为一个像素行,该像素行与 x 和 y 指定的坐标处的窗口左下角对齐,其长度等于 宽度 + 2 * 边框。 纹理数组的内部格式是使用 internalFormat 参数指定的。
glCopyTexImage1D 函数处理行中的像素的方式与 glCopyPixels 相同,不同之处在于,在像素的最终转换之前,所有像素分量值都被固定到 [0,1] 范围,并转换为纹理的内部格式,以便在纹理数组中存储。 像素顺序由对应于较低纹理坐标的低 x 坐标确定。 如果当前 framebuffer 的指定行中的任何像素位于与当前呈现上下文关联的窗口之外,则其值未定义。
不能在显示列表中包括对 glCopyTexImage1D 的 调用。
注意
glCopyTexImage1D 函数仅在 OpenGL 版本 1.1 或更高版本中可用。
纹理在颜色索引模式下不起作用。 glPixelStore 和 glPixelTransfer 函数对纹理图像的影响方式与它们影响 glDrawPixel 的方式完全相同。
以下函数检索与 glCopyTexImage1D 相关的信息:
glIsEnabled with argument GL_TEXTURE_1D
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|
库 |
|
DLL |
|