将 IRIS GL 纹理函数移植到 OpenGL 时,请记住以下几点:
OpenGL 不维护纹理表;它仅使用 1D 纹理和 2D 纹理。 若要重复使用 IRIS GL 代码中的纹理,请将它们放在显示列表中。
OpenGL 不会自动生成 mipmap。 如果使用 mipmap,则必须首先调用 gluBuild2DMipmaps 函数。
在 OpenGL 中,纹理大小比 IRIS GL 更严格监管。 OpenGL 纹理的大小必须是:
2n + 2b
其中,n 是整数,b:
- 0,如果纹理没有边框
- 1,如果纹理具有边框像素(OpenGL 纹理可以具有 1 像素边框)。
下表列出了 IRIS GL 纹理函数及其常规 OpenGL 等效项。
IRIS GL 函数 | OpenGL 函数 | 意义 |
---|---|---|
textdef2d |
glTexImage2DglTexParameter gluBuild2DMipmaps |
指定二维纹理图像。 |
textbind |
glTexImage2DglTexParameter gluBuild2DMipmaps |
选择纹理函数。 |
tevdef | glTexEnv | 定义纹理映射环境。 |
tevbind |
glTexEnvglTexImage1D |
选择纹理环境。 |
t2 | glTexCoord | 设置当前纹理坐标。 |
texgen |
glTexGenglGetTexParameter gluBuild1DMipmaps gluBuild2DMipmaps gluScaleImage |
控制纹理坐标的生成。将图像缩放为任意大小。 |
有关文本编写的详细信息,请参阅 OpenGL 编程指南。
本主题包括以下内容的相关信息。