OpenGL 常用 API
2017-07-22 20:42
316 查看
OpenGL 常用 API
注:本文结合网络 + 自己理解
OpenGL的库函数,采用C语言风格,提供大量的函数来进行图形的处理和显示。OpenGL库函数的命名方式非常有规律。所有OpenGL函数采用了以下格式:
<库前缀><根命令><可选的参数个数><可选的参数类型>
库前缀有gl、glu、aux、glut、wgl、glx、agl等等,分别表示该函数属于OpenGL那个开发库,从函数名后面中还可以看出需要多少个参数以及参数的类型。I代表int型,f代表float型,d代表double型,u代表无符号整型。例如glVertex3fv()表示了该函数属于gl库,参数是三个float型参数指针。我们用glVertex*()
来表示这一类函数。
OpenGL函数库相关的API有核心库(gl)、实用库(glu)、辅助库(aux)、实用工具库(glut)、窗口库(glx、agl、wgl)和扩展函数库等。从图可以看出,gl是核心,glu是对gl的部分封装。glx、agl、wgl 是针对不同窗口系统的函数。glut是为跨平台的OpenGL程序的工具包,比aux功能强大。扩展函数库是硬件厂商为实现硬件更新利用OpenGL的扩展机制开发的函数。
1.OpenGL 核心库
核心库包含有115个函数,函数名的前缀为gl。这部分函数用于常规的、核心的图形处理。此函数由gl.dll来负责解释执行。由于许多函数可以接收不同数以下几类。据类型的参数,因此派生出来的函数原形多达300多个。核心库中的函数主要可以分为以下几类函数:
绘制基本几何图元的函数:
矩阵操作、几何变换和投影变换的函数:如矩阵:
颜色、光照和材质的函数:
显示列表函数:主要有创建、结束、生成、删除和调用显示列表的函数
纹理映射函数:主要有:
特殊效果函数:
光栅化、像素操作函数:
选择与反馈函数:
曲线与曲面的绘制函数:
状态设置与查询函数:
注:本文结合网络 + 自己理解
OpenGL的库函数,采用C语言风格,提供大量的函数来进行图形的处理和显示。OpenGL库函数的命名方式非常有规律。所有OpenGL函数采用了以下格式:
<库前缀><根命令><可选的参数个数><可选的参数类型>
库前缀有gl、glu、aux、glut、wgl、glx、agl等等,分别表示该函数属于OpenGL那个开发库,从函数名后面中还可以看出需要多少个参数以及参数的类型。I代表int型,f代表float型,d代表double型,u代表无符号整型。例如glVertex3fv()表示了该函数属于gl库,参数是三个float型参数指针。我们用glVertex*()
来表示这一类函数。
OpenGL函数库相关的API有核心库(gl)、实用库(glu)、辅助库(aux)、实用工具库(glut)、窗口库(glx、agl、wgl)和扩展函数库等。从图可以看出,gl是核心,glu是对gl的部分封装。glx、agl、wgl 是针对不同窗口系统的函数。glut是为跨平台的OpenGL程序的工具包,比aux功能强大。扩展函数库是硬件厂商为实现硬件更新利用OpenGL的扩展机制开发的函数。
1.OpenGL 核心库
核心库包含有115个函数,函数名的前缀为gl。这部分函数用于常规的、核心的图形处理。此函数由gl.dll来负责解释执行。由于许多函数可以接收不同数以下几类。据类型的参数,因此派生出来的函数原形多达300多个。核心库中的函数主要可以分为以下几类函数:
绘制基本几何图元的函数:
glBegain()、glEnd()、glNormal*()、glVertex*();
矩阵操作、几何变换和投影变换的函数:如矩阵:
入栈函数 glPushMatrix(); 矩阵出栈函数 glPopMatrix(); 装载矩阵函数 glLoadMatrix(); 矩阵相乘函数 glMultMatrix(); 当前矩阵函数 glMatrixMode(); 矩阵标准化函数 glLoadIdentity(); 几何变换函数 glTranslate*()、glRotate*()、glScale*(); 投影变换函数 glOrtho()、glFrustum(); 视口变换函数 glViewport();
颜色、光照和材质的函数:
设置颜色模式函数 glColor*()、glIndex*(); 设置光照效果的函数 glLight*() 、glLightModel*(); 设置材质效果函数 glMaterial();
显示列表函数:主要有创建、结束、生成、删除和调用显示列表的函数
glNewList()、glEndList()、glGenLists()、glCallList()和glDeleteLists();
纹理映射函数:主要有:
一维纹理函数 glTexImage1D(); 二维纹理函数 glTexImage2D(); 设置纹理参数、纹理环境和纹理坐标的函数 glTexParameter*()、glTexEnv*()和glTetCoord*();
特殊效果函数:
融合函数 glBlendFunc(); 反走样函数 glHint(); 雾化效果 glFog*();
光栅化、像素操作函数:
像素位置 glRasterPos*(); 线型宽度 glLineWidth(); 多边形绘制模式 glPolygonMode(); 读取象素 glReadPixel(); 复制象素 glCopyPixel();
选择与反馈函数:
渲染模式 glRenderMode(); 选择缓冲区 glSelectBuffer(); 反馈缓冲区 glFeedbackBuffer();
曲线与曲面的绘制函数:
生成曲线或曲面的函数 glMap*()、glMapGrid*(); 求值器的函数 glEvalCoord*() glEvalMesh*();
状态设置与查询函数:
glGet*()、glEnable()、glGetError()
相关文章推荐
- 【OpenGL游戏开发之二】OpenGL常用API
- OpenGL常用API
- OpenGL常用API
- OpenGL之画三角形以及常用API详解。
- D3D与OpenGL常用API对译
- 【OpenGL游戏开发之二】OpenGL常用API
- OpenGL常用API
- OpenGL常用API
- sea.js常用的api简易文档
- 02-常用对象API(集合框架-体系&共性功能) 03-常用对象API(集合框架-方法演示_1) 04-常用对象API(集合框架-方法演示_2)1 2 3 4
- Saltstack-Salt常用模块及API
- 免费快递api 多种常用快速数据查询实现
- 微信小程序开发实践点滴——Bmob常用API的使用
- OpenGL API simple summary
- JavaSE----API之常用类(Object、Scanner、String)
- Java语言API,Object类、StringBuilder、Date时间获取、System类常用
- jbpm涉及到的几个重要概念及常用API
- 05-常用对象API(集合框架-迭代器使用). 1 2 07-常用对象API(集合框架-List和Set的特点) 08-常用对象API(集合框架-List集合的常见方法) 1 2
- 【Objective-C】Http常用API、同步请求与异步请求
- 17_常用API_第3天(包装类、System、Math、Arrays、冒泡排序、选择排序、二分查找)