0penGL 像素格式及数据类型

332 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第17天,点击查看活动详情


  1. Swift Optional
  2. Swift Enum
  3. iOS开发 做一个三角形
  4. Swfit 指针类型
  5. Swift 属性(下)
  6. Swift 属性
  7. Swift 小结
  8. Swift 类与结构体(下)
  9. Swift 类的生命周期
  10. Swift 类的初始化器
  11. Swift 类与结构体
  12. OpenGL 压缩纹理
  13. OpenGL 隧道坐标计算
  14. 0penGL 像素格式及数据类型
  15. OpenGL 纹理对象
  16. OpenGL 纹理
  17. OpenGL 模型变化
  18. OpenGL 视图
  19. OpenGL 矩阵
  20. OpenGL 向量
  21. OpenGL 颜色混合
  22. OpenGL 深度测试的潜在风险
  23. OpenGL 浅析深度测试
  24. OpenGL 浅析隐藏面消除
  25. OpenGL 图元连接方式
  26. 记WKWebView与HTML完成交互两三事
  27. OpenGL 渲染流程图解析
  28. OpenGL 控制你的正方形
  29. OpenGL 专业名词解释
  30. OpenGL 环境搭建 - MacOS

上一篇我们整理了 纹理对象, 本篇内容,我们整理一下 像素的格式及数据类型的内容:

0penGL 像素格式

每一个像素的数据格式,详细内容如下表所示:

常量描述
GL_RGB描述红、绿、蓝顺序排列的颜色
GL_RGBA按照红、绿、蓝、Alpha顺序排列的颜色
GL_BGR按照蓝、绿、红顺序排列颜色
GL_BGRA按照蓝、绿、红、Alpha页序排列颜色
GL_RED每个像素只包含了一个红色分量
GL_GREEN每个像素只包含了一个绿色分量
GL_BLUE每个像素只包含了一个蓝色分量
GL_RG每个像素依次包含了一个红色和绿色的分量
GL_RED_INTEGER每个像素包含了一个整数形式的红色分量
GL_GREEN_INTEGER每个像素包含了一个整数形式的绿色分量
GL_ BLUE_INTEGER每个像素包含了一个整数形式的蓝色色分量
GL_RG_INTEGER每个像素依次包含了一个整数形式的红色、绿色分量
GL_RGB_INTEGER每个像素包含了一个整数形式的红色、蓝色、绿色分量
GL_GBA_INTEGER每个像素包含了一个整数形式的红色、蓝色、绿色、Alpah分
GL_BGR_INTEGER每个像素包含了一个整数形式的蓝色、绿色、红色分量
GL_BGRA_INTEGER每个像素包含了一个整数形式的蓝色、绿色、红色、Alpah分
GL_STENCIL_INDEX每个像素只包含了一个模板值
GL_DEPTH_COMPONENT每个像素值包含一个深度值
GL_DEPTH_STENCIL每个像素包含一个深度值和一个模板值

像素数据的数据类型

像素数据的数据类型 如下表所示

常量描述
GL_UNSIGNED_BYTE每种颜色分量都是一个8位无符号整数
GL_BYTE8位有符号整数
GL_UNSIGNED_SHORT16位无符号整数
GL_SHORT16位有符号整数
GL_UNSIGNED_INT32位无符号鳖数
GL_INT32位有符号整数
GL_FLOAT单精度浮点数
GL_HALF_FLOAT半精度浮点数
GL_UNSIGNED_BYTE_3_2_2包装的RGB值
GL_UNSIGNED_BYTE_2_3_3_REV包装的RGB值
GL_UNSIGNED_SHORT_5_6_5包装的RGB值
GL_UNSIGNED_SHORT_5_6_5_REV包装的RGB值
GL_UNSIGNED_SHORT_4_4_4_4包装的RGB值
GL_UNSIGNED_SHORT_4_4_4_4_REV包装的RGB值
GL_UNSIGNED_SHORT_5 5 5 1包装的RGB值
GL_UNSIGNED_SHORT_1_5_5_5_REV包装的RGB值
GL_UNSIGNED_INT_8_8_8_8包装的RGB值
GL_UNSIGNED_INT_8_8_8_8_REV包装的RGB值
GL_UNSIGNED_INT_10_10_10_2包装的RGB值
GL_UNSIGNED_INT_2_10_10_10_REV包装的RGB值
GL_UNSIGNED_INT_24_8包装的RGB值
GL_UNSIGNED_INT_10F_11F_REV包装的RGB值
GL_FLOAT_24_UNSIGNED_INT_24_8_REV包装的RGB值