OpenGL多边形平滑 - 实例
本文将带您了解OpenGL中多边形平滑的实现方式。在OpenGL中,我们可以通过glu库提供的gluQuadricNormals函数来实现多边形平滑。
具体实现过程如下:
首先,我们需要初始化GLUT和glu库,创建窗口并进行必要的设置。
#include <GL/glut.h>
#include <GL/glu.h>
void init()
{
glutInitWindowPosition(100, 100);
glutInitWindowSize(800, 600);
glutCreateWindow(“OpenGL多边形平滑”);
glEnable(GL_DEPTH_TEST);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
GLfloat light_pos[] = {0.0, 10.0, 10.0, 1.0};
glLightfv(GL_LIGHT0, GL_POSITION, light_pos);
}
接下来,我们需要定义一个绘制多边形平滑的函数。在该函数中,我们使用glu库提供的gluNewQuadric和gluQuadricNormals函数创建一个二次曲面,并为其设置法向量,从而实现多边形平滑的效果。
void draw_smooth_polygon()
{