索引缓冲对象

有一点3D基础应该是知道这么个事情,我们会在*.obj文件,即3D对象中放至少两个东西——顶点坐标和顶点索引,索引表明了坐标之间的顺序,这样可以省略一些重复的坐标。什么意思呢?比如我们有四个顶点:

四个点分别对应到0,1,2,3(因为索引是0开始的,当然也有1开始的,这里我们用0开始),在实际绘图的时候,一般会用很多的小三角形去近似一个图形,比如我们会使用B -> A -> C,A -> C -> D的方式去创造两个小三角形来拼出一个四边形:

注意我们的连线顺序,A和C是相交的位置,它们所关联的两个小三角形的边,方向是相同的。在之后会创造一些彩色的图形,这个顺序会保证两个小三角形相交的部分颜色相同。

好处很明显,我们使用了很少的坐标,外加一个索引,表达出了一个四边形。所以,OpenGL中自然也有这个玩意,它被叫做索引缓冲对象IBO(Index Buffer Object)

创建IBO的方法和VBO类似,使用glGenBuffers(IBO_ID, &hIBO)创建。接着,我们需要使用glBindBufferglBufferData对它进行绑定,这一切都是在初始化内容里面完成的。在绘制的时候&#x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值