图形学常见概念与算法-纹理生成

OpenGL中生成纹理代码实现

unsigned int texture;
glGenTextures(1, &texture); // 第一个参数为生成纹理的数量
glBindTexture(GL_TEXTURE_2D, texture); // 绑定纹理,让之后的任何纹理指令都可以配置当前绑定的纹理
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, data); // 生成纹理,参数说明见下
glGenerateMipmap(GL_TEXTURE_2D); // 在生成纹理之后调用,会为当前绑定的纹理自动生成所需要的多级渐远纹理

glTexImage2D参数说明如下:

第一个参数:指定了纹理目标(Target)为2D,此时任何绑定到1D和3D的纹理不会受到影响;
第二个参数:纹理指定多级渐远纹理的级别,如果单独手动设置每个多级渐远纹理的级别的话,填0,即基本级别;
第三个参数:告诉OpenGL我们希望把纹理存为何种格式,如果图像只有RGB值,就把纹理也存储为RGB值;
第四五个参数:纹理的宽和高(在加载图像时存储这些信息)
第六个参数:总为0;
第七八个参数:定义了源图格式和类型;
第九个参数:真正的图像数据;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值