安裝[WIN32] ,[DATA] ,[glut32.dll]三個檔案, 並解壓縮在同一個資料夾,
解壓縮完之後,就能夠跑檔案來玩了。
以 SHAPES.EXE為例子。
可以在"左邊",點"右鍵"開啟頂點,或色彩。
可以在"右邊",點"右鍵"換形狀,點左鍵改參數。
自己打程式。
使用專案的GLUT檔案。
詳細步驟參考W1。
#include<GL/glut.h>
//導入資料夾的GL資料夾的glut.h檔案
void display(){
//自定函式 display
glutSolidTeapot(0.7);
//茶壺大小
glutSwapBuffers();
//交換秀出
}
int main(int argc,char**argv){
glutInit(&argc,argv);
//初始啟動
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
//初始啟動的模式。記憶體空間(2倍BUFFER),3D深度。
glutCreateWindow("張佑銓的WEEK03");
//製造你的WINDOW,視窗命名為 "雙引號內容"
glutDisplayFunc(display);
//DISPLAY的函式是........("");
glutMainLoop();
//不停重複 DISPLAY函式
}
加上:glColor3f(R,G,B);//顏色用
#include<GL/glut.h>
void display(){
glutSolidTeapot(0.7);
glColor3f(R,G,B);
glutSwapBuffers();
}
int main(int argc,char**argv){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutCreateWindow("張佑銓的WEEK03");
glutDisplayFunc(display);
glutMainLoop();
}
http://120.125.89.81 必要時刻直接連老師IP拿程式
#include<GL/glut.h>
#include<stdio.h>
#include<math.h>
void display(){
glBegin(GL_POLYGON);
glColor3f(125/255.0,125/255.0,125/255.0);
glVertex2f((200-100)/100.0,-(0-100)/100.0);
glVertex2f((0-100)/100.0,-(0-100)/100.0);
glVertex2f((0-100)/100.0,-(200-100)/100.0);
glVertex2f((200-100)/100.0,-(200-100)/100.0);
glEnd();
glBegin(GL_POLYGON); //大白色外
glColor3f(255/255.0,255/255.0,255/255.0);
for(float a=0;a<3.14*2;a+=0.01){
glVertex2d(-0.5+cos(a)+0.5,sin(a));
}
glEnd();
glBegin(GL_POLYGON);//黑大左半
glColor3f(0/255.0,0/255.0,0/255.0);
for(float a=1.57;a<3.14*1+1.57;a+=0.01){
glVertex2d(-0.5+cos(a)+0.5,sin(a));
}
glEnd();
glBegin(GL_POLYGON);//上中白圈
glColor3f(255/255.0,255/255.0,255/255.0);
for(float a=0;a<3.14*2;a+=0.01){
glVertex2d(-0.5+cos(a)/2+0.5,0.50+sin(a)/2);
}
glEnd();
glBegin(GL_POLYGON);//上小黑點
glColor3f(0/255.0,0/255.0,0/255.0);
for(float a=0;a<3.14*2;a+=0.01){
glVertex2d(-0.5+cos(a)/7+0.5,0.550+sin(a)/7);
}
glEnd();
glBegin(GL_POLYGON);//下中黑圈
glColor3f(0/255.0,0/255.0,0/255.0);
for(float a=0;a<3.14*2;a+=0.01){
glVertex2d(-0.5+cos(a)/2+0.5,-0.5+sin(a)/2);
}
glEnd();
glBegin(GL_POLYGON);//下小白點
glColor3f(255/255.0,255/255.0,255/255.0);
for(float a=0;a<3.14*2;a+=0.01){
glVertex2d(-0.5+cos(a)/7+0.5,-0.550+sin(a)/7);
}
glEnd();
glutSwapBuffers();
}
int main(int argc,char**argv){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutCreateWindow("WEEK03");
glutDisplayFunc(display);
glutMainLoop();
}
沒有留言:
張貼留言