您的位置:首页 > 运维架构

OpenGL中一些函数的整理(二)

2016-12-22 23:56 127 查看
以代码+注释方式给出,暂时比较混乱,作为笔记整理:

glEnableClientState(GL_VERTEX_ARRAY);//激活客户端能力,参数为具体能力,此处是顶点数组
glDisableClientState(GL_VERTEX_ARRAY);//反激活客户端能力,参数为具体能力,此处是顶点数组
glVertexPointer(3,GL_INT,0,pt); //提供顶点坐标的位置和格式,相当于注册顶点。 第一个参数:表示每一个顶点描述中的坐标数目。第二个参数:用符号常量指定数据类型。第三个参数:给出连续顶点之间的字节位移。第四个:数组本身
glDrawElements(GL_QUADS,24,GL_UNSIGNED_BYTE,vertIndex);//配合顶点数组使用,参数如下,第一个:设置要绘制的图形,例中为四边形。第二个:指定顶点索引元素数。第三个:指定索引值类型。第四个:指定索引数组。
//--------------------------------------------------------------------------------------------------------------------------------------------
位图部分
glPixelStorei(GL_PACK_ALIGNMENT,1); //控制的是所读取数据的对齐方式,默认4字节对齐
glRasterPos2i(20,20);//设置当前光栅位置,当前光栅位置是下一个位图(或图象)绘制的原点。原点是位图左下角。
glBitmap (10, 12, 0.0, 0.0, 11.0, 0.0, rasters);//定义一个二值阵列,确定绘制一张位图的规则。第1、2个参数为位图宽度、高度,第3、4参数表示位图原点,第5、6个参数表示位移(用于绘制多个位图),第七个参数是阵列本身,1表示受位图影响,0表示不受影响。
glDrawPixels(80,60,GL_RGB,GL_UNSIGNED_BYTE,colorShapre); //绘制一些像素。第1、2个参数为像素阵列宽度、高度,第三个参数指出如何为阵列指定值,第四个参数指定阵列中颜色的数据类型,第5个为阵列本身
glReadPixels();//读取一些像素。1、2参数为原点(矩形左下角),3、4为矩形宽、高,5参数表示读取内容(数据类型),6表示将内容保存到内存中时采用的格式,7表示储存位置(传入一个指针)。
glCopyPixels(400,300,50,50,GL_COLOR);//1、2参数指定屏幕位置(左下角),3、4指定尺寸,第5个参数指定复制的数据种类
glDrawBuffer(GL_FRONT_LEFT);//写入颜色缓冲区
glReadBuffer(GL_FRONT_LEFT);//选择颜色缓冲区
glEnable();//打开特定功能
goLogicOp();//控制源片段和目的片段之间的混合方式
//字符函数:略
//--------------------------------------------------------------------------------------------------------------------------------------------
//OpenGL显示表
//--------------------------------------------------------------------------------------------------------------------------------------------
//OpenGL颜色函数
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // 设置显示模式,参数为符号化GLUT常量。该例中设置窗口使用单个缓存且使用RGB颜色模型
glColor*();//设置当前需要显示的对象的颜色,如glColor3f(0.0, 0.4, 0.2),3表示RGB颜色,f表示浮点数
glIndex*();//根据索引设置当前需要显示的对象的颜色。如glIndexi(1),i表示用整数当做索引
glutSetColor(1,1.0f,1.0f,0.5f);//给指定的一个索引位置设置颜色
glBlendFunc(GL_ONE, GL_ZERO);//设置颜色的调和因子。第一个参数为源因子,第二个参数为目标因子。如例中为完全使用源颜色。
glColorPointer(4, GL10.GL_FLOAT, 0, colorArray);//指定颜色分量的位置和格式(为顶点指定颜色)。第一个参数可以是3和4,取决于RGB颜色还是RGBA颜色。第二个参数是颜色数据类型,第三个参数是每一组颜色分量的字节数。
glClearColor(1.0, 1.0, 1.0, 0.0); // 设置清除颜色(窗口背景颜色),该例中为白色,参数为RGBA
glClearIndex(index);//用索引设置清除颜色
//OpenGL点、线函数
glPointSize(size);//设置点的大小,接受正的浮点数,当size=2.0时,表示点的大小为2*2像素。
绘制点:略
glLineWidth();//设置线宽度,接受正浮点数,实际使用时会舍入到最近的正整数
glLineStipple(repeatFactor,pattern);//设置线型
glShadeModel();//
//OpenGL填充函数
glPolygonStipple();//指定一个填充图案
glPolygonMode(face,displayMode);//控制多边形的显示方式。第一个参数用来指定在多边形的哪一个面上仅显示边或顶点(正面、反面或者正反面),第二个参数表示被选中物体的面以何种方式显示。
glPolygonOffset(factor1,factor2);//设定多边形偏移?设定一段计算深度位移总量的浮点值?
glEdgeFlag(flag);//控制边界控制???
glFrontFace(vertexOrder);//单独指定一个场景的前向面和后相面,参数表示顶点次序的顺逆
glGet*(,);//查询函数。第一个参数表示要查询的状态,第二个参数表示接受返回状态的指针
glPushAttrib();//设定属性组
glPopAttrib()://重建属性栈
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OpenGL C++