OpenGL 笔记(二) 图元的属性 - 概念、轮廓

颜色模型

RGB / RGBA

glColor* (…); // 默认α是255
对于颜色,帧缓存实际上存储整数值,所以如果用浮点数会对其进行转换。

颜色索引

glIndex&(colorIndex); //用颜色表来指定颜色
glutSetColor(index, red, green, blue); //为给定的一个索引位置指定颜色

成像子集一块没太看懂 -大概是,有更丰富的对颜色进行调整的方式=
Imaging Subset

颜色调和

这个就类似PS里的混合模式=

激活 - glEnable(GL_BLEND);
调和因子 - glBlendFunc(sFactor, dFactor);//默认GL_ONE,GL_ZEROGL_ZERO;即新的颜色取代帧缓存中的颜色

颜色数组

  • 激活
    glEnableClientState(GL_COLOR_ARRAY);
  • 指定颜色
    类似顶点数组(和顶点数组组成一个交错数组):
    glColorPointer(nColorComponents, dataType, offset, colorArray);

其他颜色函数

主要是为显示窗口指定窗口的初始颜色

glClearColor(..); //对前面颜色和当前颜色调和、要在开启调和特性后、不能作用与颜色表指定颜色
glClearIndex(indez);

glClear(GL_COLOR_BUFFER_BIT); //窗口以当前颜色显示

点属性

glPointSize(size); //四舍五入到整数

线属性

线宽

glLineWidth(width);

线型

激活 glEnable(GL_LINE_STIPPLE)
设定当前线型 glLineStripple(repeatFactor, pattern);//0xFFFF,实线,1,每一位重复多少次到下一位

折线
glBegin (GL_LINE_STRIP); 为一条连续的折线

颜色渐变

glShadeModel(GL_SMOOTH) - 颜色线性插值、默认
glShadeModel(GL_FLAT) - 按第二个显示

posted @ 2017-08-26 17:15  BirdyC  阅读(366)  评论(0编辑  收藏  举报