OpenGL入门
OpenGL是个啥。。。
网上资料挺多的,今天在codeblocks配置了一下。。抄了一会书上的代码,还挺有意思的。
首先,从官网把glut的包给下载下来,点这里。
以下内容从网上抄的:
将glut.h文件放到MinGw\include\GL目录下面
将glut32.dll文件放到C:\windows\system32目录下面(如果是64位操作系统的话,将这个文件放到C:\Windows\SysWOW64目录下面)
将glut32.lib放到MinGw\lib\目录下面
然后再在codeblocks里,配置一下就行了,看这里。
挺简单的,我搞了好一会。。。贴个代码(抄书)。画点,画点,画点。。。
效果图:
赛平斯基贴片:
#include <windows.h> #include <GL/glut.h> #include <math.h> #include <time.h> #include <stdio.h> struct GLPoint { GLfloat x,y; }; void drawDot(GLPoint point) { glBegin(GL_POINTS); //printf("%lf %lf\n",point.x,point.y); glVertex2f(point.x,point.y); glEnd(); } void myDisplay() { glClear(GL_COLOR_BUFFER_BIT); // glRectf(-0.5f, -0.4f, 0.5f, 0.5f); // glBegin(GL_POLYGON); // glVertex2f(0.0f, 0.0f); // glVertex2f(0.5f, 0.0f); GLPoint T[3] = {{1,0},{0,0},{0,1}}; int index = rand()%3; GLPoint point = T[index]; drawDot(point); for(int i = 0;i < 50000;i ++) { index = rand()%3; point.x = (point.x + T[index].x)/2; point.y = (point.y + T[index].y)/2; drawDot(point); } glFlush(); } int main(int argc, char *argv[]) { glutInit(&argc,argv); glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE); glutInitWindowSize(800,600); glutInitWindowPosition(50,150); glutCreateWindow("openl"); glutDisplayFunc(&myDisplay); glutMainLoop(); return 0; }