2022年6月20日 星期一

week10

 複製上週程式碼



加入:
glBegin(GL_POLYGON);
        glTexCoord2f(0,1);glVertex2f(-1,-1);
        glTexCoord2f(1,1);glVertex2f(+1,-1);
        glTexCoord2f(1,0);glVertex2f(+1,+1);
        glTexCoord2f(0,0);glVertex2f(-1,+1);
    glEnd();



加入:
GLUquadric * sphere=NULL;//一個指到二次曲面的指標

gluQuadricTexture(sphere,1);
gluSphere(sphere,1,30,30);

sphere=gluNewQuadric();


加入:會旋轉

glPushMatrix();
    glRotatef(90,1,0,0);

    glPopMatrix();

    glEnable(GL_DEPTH_TEST);





加入:球體旋轉

float angle=0;

glRotatef(angle,0,-1,0);

angle++;//轉太快可以自己調

glutIdleFunc(display);








先增加兩行程式碼
#include "glm.h"記得glm.cpp要add file加入
GLMmodel * pmodel=NULL;

加入:
glPushMatrix();
        glRotatef(angle,0,1,0);
        if(pmodel==NULL){
            pmodel=glmReadOBJ("data/Gundam.obj");
            glmUnitize(pmodel);
            glmFacetNormals(pmodel);
            glmVertexNormals(pmodel,90);
        }
        glmDraw(pmodel,GLM_MATERIAL|GLM_TEXTURE);
    glPopMatrix();

    myTexture("data/Diffuse.jpg");
    glEnable(GL_DEPTH_TEST);

改data/Diffuse.jpg的 檔案使其圖片垂直反轉才能將正確貼圖貼上






沒有留言:

張貼留言