当前位置: 首页 > news >正文

VAO与VBO的相关操作

在OpenGL的学习中了解到了VAO与VBO的概念

什么是VBO

VBO是OpenGL指令告诉GPU在其显存中开辟一块指定大小的内存区间,其中存储片元的顶点数据等

//制作一个vbo,存放三角形的位置与颜色信息
//顶点数据
float ver[]={
-0.5f,-0.5f,0.0f,1.0f,0.0f,0.0f,
0.5f,-0.5f,0.0f,0.0f,1.0f,0.0f,
0.0f,0.5f,0.0f,0.0f,0.0f,1.0f
};GLuint vbo;//创建一个VBO,这时候没有实装
glGenBuffers(1,&vbo);
glBindBuffer(GL_ARRAY_BUFFER,vbo);//把这个vbo绑定到状态机上的vbo接口
//下面这一步才算实装,填入vbo数据(接口,大小,数据,数据使用方式)
glBufferData(GL_ARRAY_BUFFER,sizeof(ver),ver,GL_STATIC_DRAW);

什么是vao

vao是与vbo搭配使用的,他存放的是vbo的描述信息,比如上述的ver数组,我不说你知道他是什么吗,他有三排数据,每一排是一个顶点,前三个是float类型的坐标xyz,后面三个是颜色数据rgb,数据有的都是相对坐标,我记得是有个官方的名字叫什么系统坐标还是什么,忘了不重要,本质就是相对坐标系,xy的范围都是(-1,1),原点在屏幕中心,相对于屏幕的比例,这就是描述信息,告诉GPU怎么用这些数据,存在vao中

//创建绑定vao
GLuint vao =0;
glGenVertexArrays(1,&vao);
glBindVertexArray(vao);//绑定vbo,接下来设置的属性与这个buffer有关
glBindBuffer(GL_ARRAY_BUFFER,vbo);
//位置属性放在vao的0号位置,要先激活
glEnableVertexArray(0);
//位置属性放在0号位置,一个属性三个位置,属性数字是float,非归一化,步长(一个点有6个数据),顶点数据内部偏移
glVertexAttribPointer(0,3,GL_FLOAT,GL_FALSE,6*sizeof(float),(void*)0);//颜色数据放在vao的1号位置,要先激活
glEnableVertexArray(0);
glVertexAttribPointer(1,3,GL_FLOAT,GL_FALSE,6*sizeof(float),(void*)(3*sizeof(float)));

数据内偏移量这里注意一下,指针每次都值指向点数据的头部位置,如果数据是混用在一块的要设置

最后可以加一句解除vao绑定

glBindVertexArray(0);

还只算了解,有什么不对的地方欢迎指正

http://www.xdnf.cn/news/249715.html

相关文章:

  • 【软件技能】Verdi使用技巧总结
  • TactileNet 利用 AI 生成触觉图形填补视障人士无障碍鸿沟
  • 文章记单词 | 第56篇(六级)
  • 【信息系统项目管理师-论文真题】2024上半年(第二批)论文详解(包括解题思路和写作要点)
  • 交我算使用保姆教程:在计算中心利用singularity容器训练深度学习模型
  • VLM-R1 训练:max_anyres_num 参数与多图处理机制解析
  • Origin绘图操作:图中迷你图绘制
  • 【c语言】字符函数和字符串函数
  • PB的框架advgui反编译后控件无法绘制的处理(即导入pbx的操作步骤)
  • 编程题python常用技巧-持续
  • 【java WEB】恢复补充说明
  • 基于hr2管理系统的学习
  • BG开发者日志501:故事模式的思路2
  • 2025五一杯数学建模B题:矿山数据处理问题,详细问题分析,思路模型
  • 有没有贴吧备份的网站,备份贴吧网站数据的方法
  • 【c++】【STL】queue详解
  • 【业务领域】PCIE协议理解
  • 三维装配可视化界面开发笔记
  • 2024年US SCI1区TOP:自适应变异麻雀搜索算法AMSSA+地铁隧道变形预测,深度解析+性能实测
  • 小刚说C语言刷题—1602总分和平均分
  • xml 和 yaml 的区别
  • 冒泡排序:从入门到入土(不是)的奇妙旅程
  • 文章记单词 | 第55篇(六级)
  • 字节跳动社招 BSP驱动工程师
  • 猫,为什么是猫?
  • JavaScript基础-比较运算符
  • 前端八股 5
  • 2025深圳杯、东三省数学建模B题数模AI全网专业性第一
  • 2025五一杯C题五一杯数学建模思路代码文章教学:社交媒体平台用户分析问题
  • 文章记单词 | 第53篇(六级)