OpenGL学习笔记之Buffers

本文是OpenGL学习笔记,重点探讨Chapter 5 Data Buffers。在使用GLSL 4.4时,由于不支持glNamedBufferStorage(),需借助glBindBuffer()与glBufferStorage()初始化Buffer。同时,glBindVertexBuffer()的stride参数表示顶点属性数据间隔,其长度为8*sizeof(GL_FLOAT),而非4*sizeof(GL_FLOAT)。
摘要由CSDN通过智能技术生成

Chapter 5 Data Buffers

用Buffers来填充顶点着色器的数据,下面是主要的代码片段。好几次编译不过是因为:

1.我的OpengGL GLSL为4.4,还无法支持4.5新增的函数(如glNamedBufferStorage()), 需要glBindBuffer()配合glBufferStorage()为buffer初始化。
2.glBindVertexBuffer() 参数stride是缓冲区内各个顶点属性数据的间隔长度,因此长度是 8*sizeof(GL_FLOAT) 而不是 4*sizeof(GL_FLOAT)


struct vertex
{
    GLfloat position[4];
    GLfloat color[4];
};

GLuint vao;
GLuint vbo;
GLuint buffer;

static const vertex vertices[] =
{
    {
   { 0.5f, 0.5f, 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值