OpenGL中常用的函数中文手册

本文详细介绍了OpenGLES2.0中的缓冲对象操作,包括生成、绑定及数据复制等关键函数的使用方法,如glGenBuffers、glBindBuffer和glBufferData。解析了不同目标缓冲区的作用,如顶点属性、纹理数据源等,以及数据传输的大小、实际数据和使用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

https://blog.youkuaiyun.com/flycatdeng/article/details/82588903     OpenGL ES 2.0 中文API文档(转载)


 

目录

glGenBuffers -- 生成缓冲对象的名字

glBindBuffer -- 绑定一个已命名的缓冲对象

glBufferData -- 把用户定义的数据复制到当前绑定缓冲的函数


glGenBuffers -- 生成缓冲对象的名字

viod glGenBuffers(GLsizei n, GLuint* buffers);

  • n  --  指定要生成的缓冲区对象名称的数量
  • buffers  --  指明存放生成的缓冲区对象名称的数组

glGenBuffers在缓冲区中返回n个缓冲区对象的名称。


glBindBuffer -- 绑定一个已命名的缓冲对象

void glBindBuffer(GLenum target, GLuint buffer);

  •  target  --  指定缓冲区对象绑定到的目标,该目标必须是下表中的缓冲区绑定目标之一:
缓冲绑定目标目的
GL_ARRAY_BUFFER顶点属性
GL_ATOMIC_COUNTER_BUFFERAtomic counter storage
GL_COPY_READ_BUFFERBuffer copy source
GL_COPY_WRITE_BUFFERBuffer copy destination
GL_DISPATCH_INDIRECT_BUFFERIndirect compute dispatch commands
GL_DRAW_INDIRECT_BUFFERIndirect command arguments
GL_ELEMENT_ARRAY_BUFFERVertex array indices
GL_PIXEL_PACK_BUFFERPixel read target
GL_PIXEL_UNPACK_BUFFERTexture data source
GL_QUERY_BUFFERQuery result buffer
GL_SHADER_STORAGE_BUFFERRead-write storage for shaders
GL_TEXTURE_BUFFERTexture data buffer
GL_TRANSFORM_FEEDBACK_BUFFERTransform feedback buffer
GL_UNIFORM_BUFFERUniform block storage
  •  buffer  --  指定缓冲对象的名称

glBufferData -- 把用户定义的数据复制到当前绑定缓冲的函数

void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);

  •      target -- 指定缓冲区对象绑定到glBufferData的目标(参考上面的表格)
  •     size  -- 指定传输数据的大小,以字节为单位。
  •     data  -- 希望发送的实际数据
  •     usage -- 指定我们希望显卡如何管理给定的数据,有如下三种形式:
    • GL_STATIC_DRAW :数据不会或几乎不会改变。
    • GL_DYNAMIC_DRAW:数据会被改变很多。
    • GL_STREAM_DRAW :数据每次绘制时都会改变。

 

 

上述转载链接的中文文档很全面,可参考。

 

链接:opengl 函数英文原网址参考

最新版OpenGL 2.1 Reference 函数速查手册CHM格式 ------------ 1992年7月,SGI公司发布了OpenGL的1.0版本,随后又与微软公司共同开发了Windows NT版本的OpenGL,从而使一些原来必须在高档图形工作站上运行的大型3D图形处理软件也可以在微机上运用。1995年OpenGL的1.1版本面市,该版本比1.0的性能有许多提高,并加入了一些新的功能。其中包括改进打印机支持,在增强元文件中包含OpenGL的调用,顶点数组的新特性,提高顶点位置、法线、颜色、色彩指数、纹理坐标、多边形边缘标识的传输速度,引入了新的纹理特性等等。OpenGL 1.5又新增了“OpenGL Shading Language”,该语言是“OpenGL 2.0”的底核,用于着色对象、顶点着色以及片断着色技术的扩展功能。   OpenGL 2.0标准的主要制订者并非原来的SGI,而是逐渐在ARB中占据主动地位的3DLabs。2.0版本首先要做的是与旧版本之间的完整兼容性,同时在顶点与像素及内存管理上与DirectX共同合作以维持均势。OpenGL 2.0将由OpenGL 1.3的现有功能加上与之完全兼容的新功能所组成(如图一)。借此可以对在ARB停滞不前时代各家推出的各种纠缠不清的扩展指令集做一次彻底的精简。此外,硬件可编程能力的实现也提供了一个更好的方法以整合现有的扩展指令。 OpenGL 2.1版相比2.0版主要的更新包括: 1. GLSL升级至1.2版 2. 支持非正方形的矩阵. UniformMatrix {2x3,3x2,2x4,4x2,3x4,4x3}fv 3. 象素缓冲对象(Pixel Buffer Object). 它扩充了缓冲对象的接口.现在缓冲区对象可以支持顶点数组和象素数据了.象素缓冲对象能加速在GPU内存中进行的缓冲区之间的数据拷贝及其他象素操作. 4. sRGB纹理. 遵循IEC 61966-2-1.标准的sRGB颜色空间的纹理格式(包括压缩和非压缩格式).
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值