OpenGL学习笔记:颜色

OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式。无论哪种颜色模式,计算机都必须为每一个像素保存一些数据。不同的是,RGBA模式中,数据直接就代表了颜色;而颜色索引模式中,数据代表的是一个索引,要得到真正的颜色,还必须去查索引表。
PC程序开发中,使用索引颜色已经不是主流。一些小型设备例如GBA、手机等,索引颜色还是有它的用武之地

R值(红色分量)、G值(绿色分量)、B值(蓝色分量)和A值(alpha分量)

glColor*系列函数可以用于设置颜色,OpenGl设置的 颜色是全局颜色,并且是设置顶点的颜色,也就是说一旦设置之后,所有的顶点都会采用该颜色,除非再次设置。所以如果想给不同的顶点设置不同的颜色,往往需要如此:
glColorA
glVertextA
glColorB
glVertextB

面和线的颜色系统会根据定点颜色自动计算。默认情况下是渐变,比如说从红色渐变到黄色。

也可以使用glShadeModel函数关闭自动计算,如果顶点的颜色不同,则将顶点之间的其它点全部设置为与某一个点相同。直线以后面指定的点的颜色为准,而多边形将以任意顶点的颜色为准,由实现决定,具有不确定性。

有一个比较特殊的:清除屏幕的颜色。首先使用glClearColor来设置颜色,然后使用glClear来把整个屏幕刷成该颜色

你可能感兴趣的:(手机,程序开发)