`
tiankefeng0520
  • 浏览: 143254 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

OpenGL学习二:状态管理和绘制几何物体

 
阅读更多

清除窗口
clearColor(R,G,B,A);//1
clear(GL_COLOR_BUFFER_BIT) //2
GL_COLOR_BUFFER_BIT  //颜色缓冲区
GL_DEPTH_BUFFER_BIT  //深度缓冲区
GL_ACCUM_BUFFER_BIT  //累计缓冲区
GL_STENCIL_BUFFER_BIT //模板缓冲区

2处清除窗口并且以1处的颜色进行填充

 

glcolor 指定颜色
glFlush 强制执行OPENGL指令,相当于refresh
glFinish 强制执行OPENGL指令,相当于Update

 

图元绘制
glBegin(mode)
XXXX
glEnd()

GL_POINT
GL_LINE
GL_LINE_STRIP  多点连成的线
GL_LINE_LOOP   多点连成的线并形成了回路
GL_TRIANGLES
GL_TRIANGLES_STRIP 绘制连续三角形
GL_TRIANGLES_FAN  GL_TRIANGLES_STRIP相同,只是点的顺序不同
GL_QUADS
GL_QUAD_STRIP 绘制连续四边形
GL_POLYGON 绘制多边形

 

glBegin与glEnd之间的合法函数
glVertex*()
glColor*()
glIndex*() //颜色索引
glSecondaryColor*()//纹理应用后的辅助颜色
glNormal*()//法线
glMaterial*()//材质
glFogCoord*()//雾坐标
glTexCoord*()//纹理坐标
glMultiTexCoord*()//多重纹理坐标
glVertexAttrib*()//通用顶点属性
glEdgeFlag*()//控制边界绘制
glArratElement()//地区顶点数组数据
glEvalCoord*()//生成坐标
glCallList()//执行显示列表

 

基本状态管理
glEnable
glDisable
glIsEnabled

 

法线的说明

如果模型只是旋转或者移动,那么法线不会有变化,如果是缩放或者乘以了剪切矩阵,法线就需要重新计算,采用归一化的办法可以便面此问题glEnable(GL_Normalize) 但是启用规范化会消耗一部分性能,对于缩放的变化 可采用glEnable(GL_RESCALE_NORMAL)可减低性能的消耗

 

glPointSize   设置渲染点大小
glLineWidth   设置线宽度
glLineStipple   创建点划线
glPolygonMode   多边形填充形式
  GL_FRONT
GL_BACK
 
  GL_FILL
GL_LINE
 
glPolygonStipple   设置多边形点划线
glEdgeFlag*()   表示一个顶点是否该被认为是多边形的一条边界的起点

 

 

分享到:
评论

相关推荐

    绘制几何物体

    可以绘制一个简单的几何图形,上面还有代码解释

    在VC++中使用OpenGL绘制典型曲面.doc

    在VC++中使用OpenGL绘制典型曲面 摘要: 本文主要讨论了在VC++中使用OpenGL绘制Bezier、NURBS等典型曲面的一般性方法。 关键词: OpenGL;Bezier;NURBS;曲面绘制  OpenGL中对复杂物体的建摸  基本几何图元是...

    OpenGL编程指南.pdf

    第2章状态管理和绘制几何物体 2.1绘图工具箱 2.1.1清除窗口 2.1.2指定颜色 2.1.3强制完成绘图操作 2.1.4坐标系统工具箱 2.2描述点、直线和多边形 2.2.1什么是点、直线和多边形? 2.2.2指定顶点 2.2.3OpenGL几何图元 ...

    Android OpenGL绘制圆柱类

    圆柱辅助绘制类,可以重用,也可以说具有高度重用性,通俗易懂,适合了解OpenGL怎么绘制复杂的几何物体。

    OpenGL编程指南(第四版) 中文版 pdf

    OpenGL是一个功能强大的软件接口 用于绘制高质量的计算机图像 以及编写使用2D和3D几何物体及位图和图像的交互式应用程序 本书介绍OpenGL和OpenGL实用库 内容全面 权威 被称为“OpenGL红宝书” 本书第三版针对的是...

    OpenGL 绘制立方体、茶壶、环面等稍复杂的图形

    1. 基于MFC绘制三维立体小球(太阳、地球、月亮)基本图形; 2. 基于MFC使用OpenGL 绘制立方体、茶壶、环面等稍复杂的图形; 3. 基于MFC使用OpenGL用鼠标控制三维物体;

    Android OpenGLES2.0绘制三角形(二)

    无论多么复杂的几何物体,在OpenGL ES的世界里都可以用三角形拼成。关于Android OpenGL ES 三角形的绘制,在Android官方文档中有详细的说明和步骤,本文实例也是依照官方文档步骤绘制的三角形。 步骤 依照官方文档中...

    OpenGL基础图形编程

     第十三章 OpenGL复杂物体建模  13.1 图元扩展  13.1.1 点和线  13.1.2 多边形  13.2 法向计算  13.2.1 法向基本计算方法  13.2.2 法向定义  13.3 曲线生成  13.3.1 曲线绘制举例  13.3.2 曲线定义和启动 ...

    基于vc和OpenGL的几何体

    本例使用GLU库函数绘制了四个几何物体,分别为圆柱体、球体、圆盘和部分圆盘。

    OpenGL编程指南(第四版

     ·第2章解释如何创建一个物体的三维几何图形描述,并最终把它绘制到屏幕上。  ·第3章描述三维模型在绘制到二维屏幕之前如何进行变换。我们可以控制这些变换,显示模型的特定视图。  ·第4章描述如何指定颜色...

    Nehe的OpenGL教程电子书

    利用二次几何体,你可以很容易的创建球,圆盘,圆柱和圆锥。 19.粒子系统 你是否希望创建爆炸,喷泉,流星之类的效果。这一课将告诉你如何创建一个简单的例子系统,并用它来创建一种喷射的效果。 20.蒙板 ...

    OPenGL编程书籍

    利用二次几何体,你可以很容易的创建球,圆盘,圆柱和圆锥。 19.粒子系统 你是否希望创建爆炸,喷泉,流星之类的效果。这一课将告诉你如何创建一个简单的例子系统,并用它来创建一种喷射的效果。 20.蒙板 到目前...

    建梦幻三维OpenGL程序设计轻松入门

    介绍了有关OpenGL的基本知识,主要涉及颜色、绘制几何体、坐标变换、堆栈操作、显示列表、光照和材质、纹理映射、特殊效果、曲面和曲线的绘制、二次几何体绘制、像素操作、如何绘制动画物体及菜单管理。

Global site tag (gtag.js) - Google Analytics