IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> Qt+OpenGL+C++学习记录 -> 正文阅读

[C++知识库]Qt+OpenGL+C++学习记录

1.glGenBuffers,函数原型:void glGenBuffers(GLsizei n,GLuint * buffers);

第一个参数是要生成的缓冲对象的数量,第二个是缓冲对象名称。

个人理解:声明一个GLuint变量,然后使用glGenBuffers后,它就会把缓冲对象保存在vbo里,当然也可以声明一个数组类型,那么创建的3个缓冲对象的名称会依次保存在数组里。此时vbo就代表了显卡缓存的一个地址,从而可以用vbo去操作显卡缓存中的数据。

GLuint vbo;
glGenBuffers(1,&vbo);
GLuint vbo[3];
glGenBuffers(3,vbo);

glGenBuffers()函数仅仅是生成一个缓冲对象的名称,这个缓冲对象并不具备任何意义。

2.glBindBuffer,函数原型:void glBindBuffer(GLenum target,GLuint buffer);

第一个参数是一个宏,代表缓冲对象的类型,第二个参数就是要绑定的缓冲对象的名称,也就是在上一个函数里生成的名称。

该函数将缓冲对象绑定到OpenGL上下文环境中以便使用,缓冲对象可以理解为轨道,数据为火车,不同的火车需要不同的轨道

glBindBuffer(GL_ARRAY_BUFFER, VBO);  //VBO变成了一个顶点缓冲类型

3.glBufferData,函数原型:void glBufferData(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage);

第一个参数是指定目标缓冲区对象,必须为GL_ARRAY_BUFFER或GL_ELEMENT_ARRAY_BUFFER。第二个参数是指定缓冲区对象的新数据存储的大小(以字节为单位)。第三个参数是指定将复制到数据存储区以进行初始化的数据的指针。第四个是指定数据的预期使用模式,必须为GL_STREAM_DRAW,GL_STATIC_DRAW或GL_DYNAMIC_DRAW。

STREAM:数据存储内容将被修改一次并最多使用几次。

STATIC:数据存储内容将被修改一次并多次使用。

DYNAMIC:数据存储内容将被重复修改并多次使用。

访问的性质必须是DRAW:数据存储内容由应用程序修改,并用作GL绘图和图像规范命令的源。
该函数作用是把内存数据转移到显卡缓存。
尽量一次性将大量数据传给GPU,因为CPU->GPU是很慢的
缓冲区对象只是OpenGL众多对象中的一种,其实当我们使用其它对象时,都是类似的思路:创建对象,绑定类型,设置数据。

4.OpenGL顶点数组对象(vertex Array Object)VAO

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-13 09:05:31  更:2021-09-13 09:05:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 23:48:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码