源码还是这个博文里面的

https://blog.csdn.net/qq78442761/article/details/81228557

程序运行截图如下:

repeat犹如字面意思那样会重复,当几何纹理坐标大于1.0的时候,他取的纹理坐标的值位于纹理坐标减去1.0的位置,如纹理坐标是1.1的时候,他取的颜色的值是0.1。所以1.0和2.0一样,1.1和0.1一样,所以就会重复,就向字面意思那样。

修改的源码如下:

GLuint CreateTexture2D(unsigned char*pixelData, int width, int height, GLenum type) {GLuint texture;glGenTextures(1, &texture);glBindTexture(GL_TEXTURE_2D, texture);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);glTexImage2D(GL_TEXTURE_2D, 0, type, width, height, 0, type, GL_UNSIGNED_BYTE, pixelData);glBindTexture(GL_TEXTURE_2D, 0);return texture;
}
void Draw() {glClearColor(0.1f, 0.4f, 0.6f, 1.0f);glClear(GL_COLOR_BUFFER_BIT);glEnable(GL_TEXTURE_2D);  //开启2D纹理glBindTexture(GL_TEXTURE_2D, texture);//将当前纹理设置为新创建的纹理对象glBegin(GL_QUADS);glColor4ub(255, 255, 255, 255);glTexCoord2f(0.0f, 0.0f);glVertex3f(-0.1f, -0.1f, -0.4f);glTexCoord2f(2.0f, 0.0f);glVertex3f(0.1f, -0.1f, -0.4f);glTexCoord2f(2.0f, 2.0f);glVertex3f(0.1f, 0.1f, -0.4f);glTexCoord2f(0.0f, 2.0f);glVertex3f(-0.1f, 0.1f, -0.4f);glEnd();
}

C++ opengl 纹理过滤之GL_REPEAT相关推荐

  1. C++ Opengl纹理过滤和光照实例源码

    C++ Opengl纹理过滤和光照实例源码 项目开发环境 项目功能 项目演示 项目源码传送门 项目开发环境 开发语言:C++和IDE:VS2017,操作系统Windows版本windows SDK8. ...

  2. OpenGL纹理过滤以及纹理Wrapping mode

     在三维动态场景中,如果一个纹理对象迅速地远离观察点而去,此时纹理图像必须随被投影的图像一起缩小,否则很产生抖动或者闪烁的现象.为了避免产生抖动或者闪烁,OpenGL必须对纹理图像进行过滤,适当的 ...

  3. 初识OpenGL (-)纹理过滤(Texture Filtering)

    1. OpenGL需要知道怎样将纹理像素(Texture Pixel,也叫Texel)映射到纹理坐标. 纹理坐标 不依赖于分辨率(Resolution),它可以是任意浮点值, 给模型顶点设置的那个数组 ...

  4. OpenGL 纹理过滤和 mip 贴图

    一.概念 1. 纹理过滤 当纹理贴到具体像素上时,像素需要到纹理图像中进行采样,这个过程称为纹理过滤. 纹理过滤通常有两种情况:放大(GL_TEXTURE_MAG_FILTER)和缩小(GL_TEXT ...

  5. C++ opengl 纹理过滤之GL_NEAREST

    源码还是这个博文里的 https://blog.csdn.net/qq78442761/article/details/81228557 GL_LINEAR过滤:表示给多边形进行着色的时候,它的颜色需 ...

  6. android纹理缓存,Android OpenGLES(七) 理解纹理与纹理过滤

    1.理解纹理 OpenGL中的纹理可以用来表示图像,照片,甚至由一个数学算法生成的分形数据.每个二维的纹理都由许多小的纹理元素组成,它们是小块的数据,类似于我们前面讨论过的片段和像素.要使用纹理,最常 ...

  7. 纹理过滤函数glTexParameteri

    OpenGL--纹理过滤函数glTexParameteri() 图象从纹理图象空间映射到帧缓冲图象空间(映射需要重新构造纹理图像,这样就会造成应用到多边形上的图像失真),这时就可用glTexParme ...

  8. OpenGL(二十三) 各向异性纹理过滤

    如果使用一般的纹理过滤,当观察方向跟模型表面不是相互垂直的的情况下,会出现纹理信息的丢失,表现为图像看上去比较模糊,如下图所示,远处场景的细节信息很差: 针对这种情况,可以采用同向异性过滤的方式处理纹 ...

  9. OpenGL之纹理过滤(Texture Filtering)、MipMap方法、纹理坐标

    1.1 纹理过滤 像素.片元都是具有面积的,一个像素可能对应物体上的一小块区域,而物体上这个小区域对应于纹理图像上的一个小区域,因此一个像素的颜色可能来自于纹理中的一小个不规则区域,如果纹理的分辨率比 ...

最新文章

  1. 关于事务的传播特性和隔离级别的问题
  2. ASA防火墙11 应用层检测
  3. Java寻找最大公约数
  4. Android之如何解决ScrollView起始位置不是最顶部的解决办法
  5. NotificationManager: notifyAsUser: tag=null, id=6, user=UserHandle{0}
  6. 理解搜索引擎并且善用google
  7. 2d Laser 和 Odomter 内外参数标定工具原理及使用方法
  8. Vagrant虚拟化技术
  9. 容器平台选型的十大模式:Docker、DC/OS、K8S 谁与当先?
  10. php之mvc设计模式的原理和实现
  11. Verilog的模块与端口 语法
  12. Javascript异步操作(Promise)
  13. (转)王小川湖畔大学演讲:人工智能最具商业价值的是什么?
  14. speedoffice(Word)文字怎么添加下划线
  15. 精读《图解密码技术》——第十章 证书
  16. 时序分析基本概念介绍--Timing Arc
  17. 请编写一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
  18. 麒麟信安操作系统:挖掘场景,与云俱进 ——携手openEuler赋能关键行业应用
  19. 联想u盘启动linux,联想thinkpad e335台式机bios设置u盘启动的方法
  20. 遍历Python字典

热门文章

  1. 网管实战之使用RSA实现企业安全访问
  2. 做的可视化大屏不好看?教你如何做出能快速开发又酷炫的大屏
  3. 在服务子程中首先关闭ie 的HTML5连接向导
  4. 用VC写Assembly代码(5) --循环的使用(一)
  5. 如何杀掉本地和远程NT系统进程
  6. C#中is vs as
  7. 双十一期间快递员凌晨送件 将下班程序员误认成小偷
  8. 一个程序员转产品经理的经验分享
  9. 大数据之HBase教程
  10. php下拉上滑分页,Flutter实现下拉刷新 上拉分页加载更多