2020年3月10日 星期二

week02畫出茶壺

這張圖的程式碼是畫出茶壺

#include <GL/glut.h>
void display()
{
    
    glutSolidTeapot( 0.3 );  ///實心茶壺
    glutSwapBuffers(); ///交換兩倍buffer s
}


int main(int argc, char**argv) ///高手等級的main()
{
    glutInit(&argc,argv);///main的參數,於近來
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    ///啟動3D的顯示能力,兩倍顯示buffer,有3D深度值
    glutCreateWindow("week02 YES!!!");
    ///建立3D窗子
    glutDisplayFunc(display);
    ///等一下怎麼畫
    glutMainLoop();
    ///主要迴圈卡在這裡,不會結束
}
多加了一行程式碼可以改變顏色
glColor3f(1.0,0.5,0.0); ///要放在畫圖前才可以
 ///f在這邊是浮點數,也可以用其他用法例如glColor3ub(ub=unsigned byte>>0~255)

glBegin(GL_POLYGON);///開始畫
        glColor3f(1,0,0);glVertex2f(1,0);
        glColor3f(0,1,0);glVertex2f(-1,1);
        glColor3f(0,0,1);glVertex2f(-1,-1);
        glEnd();///結束畫
        glutSwapBuffers();
顏色是由glColor3f選擇頂點位子則是glVertex2f

1 則留言: