OpenGL之glPolygonMode函数的用法

1.绘制模式

在绘制多边形时除了默认的填充方式,还可以使用点和线

使用glPolygonMode函数来设置模式

image

三种不同模式下的绘图 
GL_FILL

image 
GL_LINE

image

GL_POINT

image

2.多边形的两面

如果以顺时针绘制则是反面,逆时针绘制则是正面 

// 设置正面为填充模式
glPolygonMode(GL_FRONT, GL_FILL); 
// 设置反面为线形模式
glPolygonMode(GL_BACK, GL_LINE); 

// 设置逆时针绘制一个正方形
glBegin(GL_POLYGON);              
    glVertex2f(-0.5f, -0.5f);
    glVertex2f(0.0f, -0.5f);
    glVertex2f(0.0f, 0.0f);
    glVertex2f(-0.5f, 0.0f);
glEnd();
// 设置顺时针绘制一个正方形
glBegin(GL_POLYGON);             
    glVertex2f(0.0f, 0.0f);
    glVertex2f(0.0f, 0.5f);
    glVertex2f(0.5f, 0.5f);
    glVertex2f(0.5f, 0.0f);
glEnd();

效果如下图


3.切换正反面

可以使用glFrontFace函数来调换正面与反面的概念

glFrontFace(GL_CCW);  // 设置CCW方向为“正面”,CCW即CounterClockWise,逆时针 
glFrontFace(GL_CW);   // 设置CW方向为“正面”,CW即ClockWise,顺时针

下面为使用glFrontFace(GL_CW)的效果

image


原文链接:http://blog.chinaunix.net/uid-11353969-id-1751102.html

阅读更多
文章标签: OpenGL glPolygonMode
个人分类: 3D
上一篇Qt5版NeHe OpenGL教程之十:飘动的旗帜
下一篇C++笔试题之回旋(螺旋)矩阵
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭