首页 > 学院 > 开发设计 > 正文

OpenGL学习笔记3_0(多边形通用设置)

2019-11-11 04:45:23
字体:
来源:转载
供稿:网友

蓝宝书 第三章

本章主要是讲解绘制图元,主要图元如下表所示。

图片来源:点击打开链接

多边形通用设置

1)正反面

一般来说,看向多边形时,该多边形通过点逆时针连接而成的面为正面,顺时针连接而成的面为背面。

glFrontFace(GL_CW); 设置多边形顺时针连接的面为正面

glFrontFace(GL_CCW);设置多边形逆时针连接的面为正面

2)纯色填充

glShadeModel(GL_FLAT);多边形纯色填充,填充颜色为多边形最后一个顶点的颜色 

3)线条平滑

glShadeModel(GL_SMOOTH);

4)深度缓冲区功能

glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH);//初始化深度缓冲区功能

glEnable(GL_DEPTH_TEST); //开启深度缓冲功能

glDisable(GL_DEPTH_TEST); //关闭深度缓冲功能

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); //清除深度缓冲

深度缓冲功能:绘制图形时按照当前视觉角度查找当前图像是否会被其他图像遮挡,若被遮挡则当前被遮挡部分不进行绘制,即只绘制最上层图像。一般绘制3D图像时需要开启该功能,使图像更真实,若要绘制透明图像,则需关闭该功能,参考:点击打开链接

5)剔除功能

去除图像正面或背面,减少不必要的开销,提高运算速度

参考:点击打开链接

6)多边形模式

glPolygonMode(GL_BACK,GL_LINE);设置图形背面使用线条

glPolygonMode(GL_BACK,GL_FILL);设置图形背面填充

GL_BACK,GL_FRONT 设置图形正反面,GL_LINE设置使用线条描绘轮廓,GL_FILL设置使用颜色填充图形

使用该模式时,需禁用该面的剔除功能,否则无法看到正面或反面


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表