1.開始使用GLUT
#include <GL/glut.h>
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");//建立視窗," "裡是視窗上面那條要顯示的名稱
glutDisplayFunc(display);//開始顯示圖形
glutMainLoop();//loop
return 0;
}
//基本的GLUT程式
2.顯示出一個茶壺
#include <GL/glut.h>
static void display(void)
{
glClearColor(1,1,1,0);
//設定背景色(R,G,B,A/*透明度*/)避免畫面殘留, 0到1,
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
//清掉背景的顏色改為剛剛設定的顏色
glColor3d(1,0,0);
//類似筆刷,設定下次顯示的顏色
glutSolidTeapot(0.3);
//顯示茶壺,數字設定圖片大小(比例)
glutSwapBuffers();
//變更顯示的緩衝區,將新的畫面從緩衝區放到畫面上
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow(argv[0]);
glutDisplayFunc(display);
glutMainLoop();
return EXIT_SUCCESS;
}
3.建立一個三角形
#include <GL/glut.h>
static void display(void)
{
glClearColor(1,1,1,0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glColor3d(1,0,0);
glBegin(GL_POLYGON);//開始建立多邊型
glVertex3f(1,-1,0);//設定三個座標,3f的3表示三個點,f表示float
glVertex3f(-1,-1,0);
glVertex3f(0,1,0);
glEnd();//結束建立多邊形
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow(argv[0]);
glutDisplayFunc(display);
glutMainLoop();
return EXIT_SUCCESS;
}
沒有留言:
張貼留言