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

来源:互联网 发布:儿童冬季内衣淘宝网 编辑:程序博客网 时间:2024/06/15 15:04

以代码+注释方式给出,暂时比较混乱,作为笔记整理:

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); // 设置清除颜色(窗口背景颜色),该例中为白色,参数为RGBAglClearIndex(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()://重建属性栈


0 0
原创粉丝点击