2017年9月21日 星期四

瑋倫的點線面筆記

1.打開GLUT專案

2.複製部分程式碼(可用notepad++編輯)
#include <GL/glut.h>
void display()
{
 glClearColor(1,0,0,0); //清背景顏色 (R,G,B,A) ex:紅1000
                                         
 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

 glColor3f(1,1,1);
                                    //3是3個參數,f是0.0-1.0之間的浮點數
                                 

 glutSolidTeapot(0.3); //茶壺 glut外掛

 glutSwapBuffers(); //交換繪圖Buffers
}

int main(int argc, char *argv[]) //主程式函式,吃argc參數數量,argv是參數的全部,用陣列存
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); //設定顯示模式
 glutCreateWindow("GLUT Shapes");
 glutDisplayFunc(display);
 glutMainLoop(); //主要迴圈
}


完成茶壺~~
3.做三角形程式碼
#include <GL/glut.h>

void display()
{
 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

 glBegin(GL_POLYGON); //開始畫(多邊形)
        //彩色三角形在頂點前用函式glColor3f(R,G,B);
 glColor3f(1,0,0); glVertex3f(1,1,0); //三個頂點 前面為設定顏色
 glColor3f(0,1,0); glVertex3f(-1,1,0);
 glColor3f(0,0,1); glVertex3f(0,-1,0);
        
 glEnd(); //結束畫

 glutSwapBuffers();
}

int main(int argc, char *argv[])
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
 glutCreateWindow("GLUT Shapes");
 glutDisplayFunc(display);
 glutMainLoop();
}


                 

沒有留言:

張貼留言