每日一个OpenGL API (二)
2015-10-27 15:09
190 查看
glVertexAtrribPointer
<span style="font-size:18px;">void glVertexAttribPointer( GLuint index,
GLint size,
GLenum type,
GLboolean normalized,
GLsizei stride,
const GLvoid * pointer);</span>
第一次见到这个函数是《opengl权威指南》里面,它在里面的作用就是在向顶点着色器输入数据的时候,就用这个函数将shader中的in类型的变量关联到同一个顶点属性数组。看不懂这个句,还真看不懂。我自己也不懂,先把这些记录着,我相信我总有懂的一天。
参数1 :
index : 设置index位置对应的数据,我看了一下例子,是shader中声明的传递进去的数据值。
参数2:
size:表示每个顶点所需要更新的分量数目,这个值必须是1,2,3,4或者GL_RGBA,这个分量数目是什么呢,也就是定点的(x,y,z,w)
参数3:
type:指定了数组中每个元素的类型。(GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT,GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FIXED,GL_HALF_FLOAT,
GL_FLOAT, GL_DOUBLE)
参数4:
normalized:表示顶点数据在存储之前是否需要归一化。
参数5:
stride:数组中每两个元素的之间的偏移值。
参数6:
pointer:从起始位置开始计算整个数组的偏移值。
<span style="font-size:18px;">void glVertexAttribPointer( GLuint index,
GLint size,
GLenum type,
GLboolean normalized,
GLsizei stride,
const GLvoid * pointer);</span>
第一次见到这个函数是《opengl权威指南》里面,它在里面的作用就是在向顶点着色器输入数据的时候,就用这个函数将shader中的in类型的变量关联到同一个顶点属性数组。看不懂这个句,还真看不懂。我自己也不懂,先把这些记录着,我相信我总有懂的一天。
参数1 :
index : 设置index位置对应的数据,我看了一下例子,是shader中声明的传递进去的数据值。
参数2:
size:表示每个顶点所需要更新的分量数目,这个值必须是1,2,3,4或者GL_RGBA,这个分量数目是什么呢,也就是定点的(x,y,z,w)
参数3:
type:指定了数组中每个元素的类型。(GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT,GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FIXED,GL_HALF_FLOAT,
GL_FLOAT, GL_DOUBLE)
参数4:
normalized:表示顶点数据在存储之前是否需要归一化。
参数5:
stride:数组中每两个元素的之间的偏移值。
参数6:
pointer:从起始位置开始计算整个数组的偏移值。
相关文章推荐
- nagios 监控 linux主机的信息
- linux c 字符串到time_t时间转换
- 系统管理员必学的30个Linux实用命令
- 如何考量BS架构的高层设计
- 【TS问题排查】tomcat字符集的修改
- 【Linux】系统 之 Load
- Systemd这个有争议的项目正在接管你身边的Linux发行版
- LINUX 服务器之间文件传输SCP命令
- 为OpenStack制作Windows 2008 R2镜像
- 配置tomcat开机启动服务
- 提高网站打开速度的18点要素和五点建议
- ubuntu eclipse 配置tomcat
- Linux 系统挂载数据盘
- 【UML】——浅谈设计模式,框架,架构
- linux 生产环境搭建
- Linux获取帮助等基础命令的使用
- linux系统中的简单拷贝文件代码
- Linux 系统中僵尸进程
- Linux<十> 开机关机启动与多重启动
- linux 环境和 windows 环境在部署web项目时注意的问题