- 指定图元顶点数据(亦称顶点属性)

  顶点属性有常量顶点属性,和属性数组。

  常量指的是所有的顶点都公用此属性。比如单色的三角形,则颜色属性对所有的顶点都一样。

  通过命令glVertexAtrrib*f(index,float...) 或 glVertexAtrrib*fv(index,float*)来指定。2.0版本暂时只支持 float类型的顶点常量。

  如果每个顶点的某个属性不可以用常量,则可以用属性数组来表示。每一个顶点的属性存放在数组里。

  glVertexAttribPoint(index,size,type,normalized,stride,ptr) 用来指定顶点属性

  index: 把此属性数据绑定在第几个属性槽,范围从 0到  max vertex attributes supported – 1 ,2.0版本要求最少支持8个属性槽。也就是说一个顶点最少有8个属性,基本也够用了。

  size:表示此属性有几个分量。比如如果是表示位置的属性,则可能有3个分量;如果是表示纹理坐标的分量,则可能是2;等等。

  type:表示每个分量的类型,比如可以是 GL_FLOAT GL_BYTE GL_UNSIGNED_BYTE 等

  normalized:表示由非float型向float型转换时,是否需要标准化,即转换到 [0,1],或[-1,1]范围内

  stride:由于属性在buff内有可能不是连续存放的(即通一种属性之间有间隔),stride则表示此间隔,用于寻找下一个属性。

  ptr:即指向此buff的指针。

   顶点属性有两种属性,一个是常量属性,一种是属性数组。要想使用顶点属性数组功能,则需要调用 glEnableVertexAttribArray(index)命令;调用glDisableVertexAttribArray(index)则表示

  index处的表示的属性是常量属性。

  顶点数组数据存在应用程序的内存中,每次调用glDrawElements()和glDrawArrays()都会把顶点数组数据从内存拷贝到图形显存中。很消耗时间跟总线带宽。

  

  

  

opengles2.0 学习笔记的更多相关文章

  1. DirectX 总结和DirectX 9.0 学习笔记

    转自:http://www.cnblogs.com/graphics/archive/2009/11/25/1583682.html DirectX 总结 DDS DirectXDraw Surfac ...

  2. 一起学ASP.NET Core 2.0学习笔记(二): ef core2.0 及mysql provider 、Fluent API相关配置及迁移

    不得不说微软的技术迭代还是很快的,上了微软的船就得跟着她走下去,前文一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx.superviso ...

  3. vue2.0学习笔记之路由(二)路由嵌套+动画

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. vue2.0学习笔记之路由(二)路由嵌套

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. hdcms v5.7.0学习笔记

    hdcms v5.7.0学习笔记 https://note.youdao.com/ynoteshare1/index.html?id=c404d63ac910eb15a440452f73d6a6db& ...

  6. dhtmlxgrid v3.0学习笔记

    dhtmlxgrid v3.0学习笔记 分类: dhtmlx JavaScript2012-01-31 15:41 1744人阅读 评论(0) 收藏 举报 stylesheetdatecalendar ...

  7. OAuth 2.0学习笔记

    文章目录 OAuth的作用就是让"客户端"安全可控地获取"用户"的授权,与"服务商提供商"进行互动. OAuth在"客户端&quo ...

  8. 一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx、supervisor、mysql环境搭建

    作为.neter,看到.net core 2.0的正式发布,心里是有点小激动的,迫不及待的体验了一把,发现速度确实是快了很多,其中也遇到一些小问题,所以整理了一些学习笔记: 阅读目录 环境说明 安装C ...

  9. RxJava2.0学习笔记2 2018年7月3日 周二

    摘记: 1.map -- 转换  有些服务端的接口设计,会在返回的数据外层包裹一些额外信息,这些信息对于调试很有用,但本地显示是用不到的.使用 map() 可以把外层的格式剥掉,只留下本地会用到的核心 ...

随机推荐

  1. java中数据类型转换

    1.自动类型转换:首先两者数据类型要兼容,且目标类型要大于源类型如(int类型转换成double类型) 2.强制转换:两者数据类型要兼容,会使破坏数据的结构

  2. CentOS6.5下安装apache2.2和PHP 5.5.28

    CentOS6.5下安装apache2.2 1. 准备程序 :httpd-2.2.27.tar.gz 下载地址:http://httpd.apache.org/download.cgi#apache2 ...

  3. java中常用数据类型转换器

    /** * 把String转换成long * * @param src 要转换的String * @param def 转换失败时返回此值 * @return 转换好的long */ public s ...

  4. docker-compose安装使用

    Docker Compose的工作原理 Docker Compose将所管理的容器分为三层,工程(project),服务(service)以及容器(contaienr).Docker Compose运 ...

  5. signtool.exe not found

    When check the [sign the Xap File] checkbox, build project failed due to signtool.exe not found. Fol ...

  6. git push throws error: RPC failed; result=22, HTTP code = 411的解决办法

    原因:默认 Git 设置 http post 的缓存为 1MB,将其设置为 500MB 解决办法如下: git config http.postBuffer 524288000

  7. node.js 基础学习笔记1

    1. node -v 查看版本 node -e --js代码 node --进入编辑模式 Ctrl+C 退出编译模式 var http=require('http') http.createServe ...

  8. 原生js获取样式

    js中的获取样式是在是让人头疼,为了方便兼容多个浏览器,把设置样式封装成一个函数. 函数如下: function getStyle(element, property) { var value = e ...

  9. (转)ajax.dll,ajaxpro.dll的区别和用法

    ASP.NET AjaxPro的应用 1.首先下载AjaxPro组件.并将AjaxPro.dll引用到网站(或项目). 2.修改Web.config.在 <system.web> 元素中添 ...

  10. 为什么for(int i=0;i<9;i++) 在c语言中是错误的?

    显示表示,i 变量不可以在for中定义,必须在外面定义,这是为什么? 因为C99标准以前的C标准是不支持临时变量在for循环中定义的. C99标准就支持这样写.但是目前有些编译器并不怎么愿意支持C99 ...