openGL画圆

Posted Dragonir

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openGL画圆相关的知识,希望对你有一定的参考价值。

#include "stdafx.h"
#include <GL/glut.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>

const int n = 50;
const GLfloat R = 0.5f;
const GLfloat PI = 3.24250265357f;
void myDisplay(void) {
    glClear(GL_COLOR_BUFFER_BIT);
    glBegin(GL_POLYGON);
    for (int i = 0; i<n; i++) {
        glVertex2f(R*cos(2 * PI / n*i), R*sin(2 * PI / n*i));
    }
    glEnd();
    glFlush();
}

int main(int argc, char *argv[]) {
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(500, 500);
    glutCreateWindow("OpenGL画圆程序");
    glutDisplayFunc(&myDisplay);
    glutMainLoop();
    return 0;
}

运行结果如下图所示:

 

以上是关于openGL画圆的主要内容,如果未能解决你的问题,请参考以下文章

openGL画圆

OpenGL用鼠标移动画圆

OpenGL片段着色器不照亮场景

片段着色器中未使用纹理数据 - OpenGL

带有顶点/片段着色器的光。使用不同的变量。 (openGL)

OpenGL、GLSL 片段着色器无法读取 Sampler2D 纹理