载入和显示纹理
来源:互联网 发布:javaweb报销系统源码 编辑:程序博客网 时间:2024/04/29 23:13
glBindTexture()函数在渲染的时候调用,需要注意,一定不能放在glBegin()和glEnd()函数对中,否则函数的调用无效。下面就总结一下怎样在OpenGL中载入和显示纹理。
1、在初始化阶段,调用glGenTextures()函数产生纹理名(纹理索引),使用glBindTexture()函数绑定纹理,再用熟悉的图形加载库函数加载一个纹理,使用glTexImage2D()将数据载入至显存中;
2、在显示阶段,调用glBindTexture()函数将纹理绑定至显示上下文中,与顶点一起进入纹理贴图阶段。
下面是一段演示代码说明了怎样载入和显示纹理:
void InitGL( void )
{
glEnable( GL_TEXTURE_2D );// 启用2D纹理
glGenTextures( size, (GLuint*)&pTexture[0] );// size是大小,pTexture是纹理名指针
……
glBindTexture( GL_TEXTURE_2D, pTexture[0] );
pData = LoadImage( fileName );// 载入文件,保存至pData指针中
glTexImage2D( GL_TEXTURE_2D,// 目标
0,// 级别
internalFormat,// 纹理内部格式
width,// 纹理的宽(最好2的次方)
height,// 纹理的高(最好2的次方)
0,// 纹理的深度(最好2的次方)
0x80E1,// 纹理单元格式(GL_BGRA=0x80E1)
textureType,// 像素的数据类型
pData );// 数据指针
……
}
void RenderGL( void )
{
glBindTexture( GL_TEXTURE_2D, pTexture[0] );
glBegin( primitive );
glTexCoord( u, v );
glVertex3f( x, y, z );
……
glEnd( );
}
- 载入和显示纹理
- 载入纹理
- MATLAB载入和显示图像
- 图像的载入和显示
- OpenCV--图像的载入、显示和输出
- 图像的载入,显示和保存
- 关于ListView数据载入和显示
- 图像载入,显示和输出相关代码
- opencv的图像载入、显示和输出
- 图像的载入、显示和输出示例
- opencv 图像载入、显示和输出
- opencv 图像的载入显示和输出
- opengl使用 devil载入纹理
- OpenGL载入DDS压缩纹理
- OpenGL载入图片作为纹理
- 显示纹理
- 经常用到的那个纹理载入单元
- C#+OpenGL编程之OpenGL 纹理载入
- Xcode 7 你能不能再抗扎腾点儿呢 - 尤其自个儿强制升级后,没事儿就关闭
- ArrayList和LinkedList源码阅读笔记
- Hadoop动态调整Map Task内存资源大小
- oracle统计字符串中某个字符出现的次数
- 光立方——电子制作的软件模拟
- 载入和显示纹理
- 5-2 UVA 1594 Ducci Sequence (Ducci序列)
- redis 学习手册之redis服务操作命令
- Hadoop关键任务Job资源隔离方案
- 翻译:采用现代Objective-C
- 模块划分的 和 方法
- git mode 代码解释
- 如何使用git 生成patch
- Swift Moya