2021年3月3日 星期三

我要寫個[慘]字

 








今天是第二周呢....

上課一開始老師教我們先選取OPEMGL和GLUT裡的程式碼,不過現在還不知道要幹嘛








OPENGL先反白這幾行等等會用到



GLUT反白這幾行等等會用到


刪除了非常多東西只留下這幾行簡單的程式碼後
加入第7行的 glutSolidTeapoot(0.3);




                      執行程式後就會跑出茶壺了!!!!!


程式碼:

#include <GL/glut.h>///使用 GLUT外掛
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
    glutSolidTeapot(0.3);
    glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
    glutInit(&argc, argv);///(1)Init初始化GLUT
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
///(2)Init初始化display的功能

    glutCreateWindow("08160830");///建立GLUT視窗
    glutDisplayFunc(display);///(4)準備display()函式

    glutMainLoop();///(5)主要函式
}





如果在display函式中加入:
glutColor3f(1,0,0)
;///改變顏色




    

                        來了來了
                        剛剛第一個反白的程式碼
                           glBegin(GL_TRIANGLES);

                                        glColor3f(1.0f, 0.0f, 0.0f);   glVertex2f(0.0f,   1.0f);
                                        glColor3f(0.0f, 1.0f, 0.0f);   glVertex2f(0.87f,  -0.5f);
                                        glColor3f(0.0f, 0.0f, 1.0f);   glVertex2f(-0.87f, -0.5f);

                                    glEnd();
                        有作用了
                        把它加進去 display函式
                        就可以出現一個彩色三角形
                        所以就蹦出了上面那個很騷的茶壺三角形了


程式碼:

#include <GL/glut.h> static void display(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glBegin(GL_TRIANGLES); glColor3f(1.0f, 0.0f, 0.0f); glVertex2f(0.0f, 1.0f); glColor3f(0.0f, 1.0f, 0.0f); glVertex2f(0.87f, -0.5f); glColor3f(0.0f, 0.0f, 1.0f); glVertex2f(-0.87f, -0.5f); glEnd(); glColor3f(1,0,5); glutSolidTeapot(0.3); glutSwapBuffers(); } int main(int argc, char *argv[]) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); glutCreateWindow("08160830"); glutDisplayFunc(display); glutMainLoop(); }




                       如果在第7行的程式碼中  glBegin(GL_TRIANGLES);
                    TRIANGLES改成glBegin(GL_LINE_LOOP);
                    就會出現上面的線線三角形














======================================================================

這幹嘛的我不知道


不過程式碼是這樣:

#include <stdio.h> int main(int argc,char* argv[]) { printf("有幾個參數argc: %d\n",argc); for(int i=0;i<argc;i++){ printf("參數%d: %s\n",i,argv[i]); } }





















沒有留言:

張貼留言

距地表面160 Week11

 #include "glm.h" GLMmodel* pmodel = NULL; void drawmodel(void) {     if (!pmodel) { pmodel = glmReadOBJ("data/porsche.obj...