[cocos2d-x]OPENGL ES支持的像素格式

OPENGL ES最多支持32位颜色值。

支持的像素格式有以下几种:

客户端格式 GL格式 GL数据类型 字节数
RGBA8888 GL_RGBA GL_UNSIGNED_BYTE 4
RGB888 GL_RGB GL_UNSIGNED_BYTE 3
RGB5A1 GL_RGBA GL_UNSIGNED_SHORT_5_5_5_1 2
RGB565 GL_RGB GL_UNSIGNED_SHORT_5_6_5 2
RGBA4444 GL_RGBA GL_UNSIGNED_SHORT_4_4_4_4 2
AI88 GL_LUMINANCE_ALPHA GL_UNSIGNED_BYTE 2
I8 GL_LUMINANCE GL_UNSIGNED_BYTE 1
A8 GL_ALPHA GL_UNSIGNED_BYTE 1

RGB888和RGBA8888相差了ALPHA通道的8位,在大多数情况下,ALPHA通道的值都是1,此时就应该使用RGB888格式来存储,既节约了内存空间,也提高了渲染性能。

同样占2字节的格式中也有区别:

RGB565格式放弃了ALPHA通道,但提高了RGB颜色的精度,(由于人类的视觉对绿色更敏感,所以G通道是6位)。

RGB5A1格式只有1位表示ALPHA值,适用于字体或者蒙版。

RGBA4444格式就是RGBA8888格式的简化版,丢失了一些精度,但可以节省一半的内存。

时间: 2024-12-27 01:35:29

[cocos2d-x]OPENGL ES支持的像素格式的相关文章

[转] iOS OpenGL ES Guide

OpenGL ES 小结 概述 OpenGL ES (Open Graphics Library for Embedded Systems)是访问类似 iPhone 和 iPad 的现代嵌入式系统的 2D 和 3D 图形加速硬件的标准. 把程序提供的几何数据转换为屏幕上的图像的过程叫做渲染. GPU 控制的缓存是高效渲染的关键.容纳几何数据的缓存定义了要渲染的点.线段和三角形. OpenGL ES 3D 的默认坐标系.顶点和矢量为几何数据的描述提供了数学基础. 渲染的结果通常保存在帧缓存中.有两

Android OpenGL ES(十四)gl10方法解析

Android 支持 OpenGL 列表 1.GL 2.GL 10 3.GL 10 EXT 4.GL 11 5.GL 11 EXT 6.GL 11 ExtensionPack 我们将使用 GL10 这个类开始接触 OpenGL,探索3D 领域. javax.microedition.khronos.opengles 接口GL10 上级接口:GL 下级接口:GL11 公共接口GL10继承于GL GL10接口包含了Java(TM)程序语言为OpenGL绑定的核心功能.OES_byte_coordin

OpenGL ES 简单教程

什么是OpenGL ES? OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库. 为桌面版本号OpenGL 的一个子集. OpenGL ES 定义了一个在移动平台上可以支持OpenGL最基本功能的精简标准.以适应如手机.PDA或其他消费者移动终端的显示系统. Khronos Group 定义和管理了OpenGL ES标准. OpenGL 与 OpenGL ES的关系OpenGL ES 是基于桌面版本号OpenGL 的

OpenGL ES 3.0之Fragment buffer objects(FBO)详解(一)

片段操作图 这篇文章将介绍从写入帧缓冲和读取帧缓冲的方式. Buffers(缓冲) OpenGL ES支持三种缓冲: OpenGL ES •• Color buffer颜色缓冲 •• Depth buffer深度缓冲 •• Stencil buffer模板缓冲 创建缓冲区 OpenGL ES 是一个交互式的渲染系统,假设每帧的开始,你希望初始化所有缓冲区中数据的默认值.调用glClear 函数来清除缓冲区内容,参数mask 指定清除的缓冲区. 你可能不要求清除每一个缓冲区,不在同时清除它们.但如

OpenGL ES 2.0 渲染管线 学习笔记

图中展示整个OpenGL ES 2.0可编程管线 图中Vertex Shader和Fragment Shader 是可编程管线: Vertex Array/Buffer objects 顶点数据来源,这时渲染管线的顶点输入,通常使用 Buffer objects效率更好. Vertex Shader 顶点着色器通过矩阵变换位置.计算照明公式来生成逐顶点颜色已经生成或变换纹理坐标等基于顶点的操作. Primitive Assembly 图元装配经过着色器处理之后的顶点在图片装配阶段被装配为基本图元

3D OpenGL ES

什么是OpenGL ES? OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库. 为桌面版本OpenGL 的一个子集. OpenGL ES管道(Pipeline) OpenGL ES 1.x 的工序是固定的,称为Fix-Function Pipeline,可以想象一个带有很多控制开关的机器,尽管加工的工序是固定的,但是可以通过打开或关闭开关来设置参数或者打开关闭某些功能.OpenGL ES 2.0 允许提供编程来控制

(转)Android OpenGL ES(一)

转:http://wiki.jikexueyuan.com/project/opengl-es-guide/pipeline.html OpenGL ES 主要用来开发 3D 图形应用的.OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,针对手机.PDA 和游戏主机等嵌入式设备而设计. 什么是 OpenGL ES? OpenGL ES (为 OpenGL for Embedded System 的缩写) 为适用于嵌入式系统

Android OpenGL ES(十三)通用的矩阵变换指令 .

Android OpenGL ES 对于不同坐标系下坐标变换,大都使用矩阵运算的方法来定义和实现的.这里介绍对应指定的坐标系(比如viewmodel, projection或是viewport) Android OpenGL ES支持的一些矩阵运算及操作. OpenGL ES 中使用四个分量(x,y,z,w)来定义空间一个点,使用4个分量来描述3D坐标称为齐次坐标 :所谓齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示. 它有什么优点呢? 许多图形应用涉及到几何变换,主要包括平移.旋转

Android OpenGL ES(七)基本几何图形定义 .

在前面Android OpenGL ES(六):创建实例应用OpenGLDemos程序框架 我们创建了示例程序的基本框架,并提供了一个“Hello World”示例,将屏幕显示为红色. 本例介绍OpenGL ES 3D图形库支持的几种基本几何图形,通常二维图形库可以绘制点,线,多边形,圆弧,路径等等.OpenGL ES 支持绘制的基本几何图形分为三类:点,线段,三角形.也就是说OpenGL ES 只能绘制这三种基本几何图形.任何复杂的2D或是3D图形都是通过这三种几何图形构造而成的. 比如下图复