2023年4月6日 星期四

week 08 uc

 step01-1

先登入https://jsyeh.org/3dcg10/,將windows解壓縮並將data丟進去下載sourcev 對應的是 vertex頂點,vn對應 vertex normal法向量,f對應 面 face,把自己的3D模型匯出檔案,並進去改別人的程式碼。

利用MAYA匯出OBJ檔案:

打開maya進行操作
在上方功能類按下Windows/Setting/Perferences/Plug-in Manager 進行設定 
確認完後再 File/Export All 選擇 OBJexport 及 mel 檔案類型進行匯出



















利用剛剛匯出的OBJ應用在 week08-1 解壓縮的Transformation.exe
先將匯出的OBJ檔及MTL檔模型放進\data裡,都改名成 f-16
打開Transformation.exe進行確認操作,對右邊模型視窗點擊右鍵,然後選f-16 jet模型



















step02-1

開新專案week08-1_glm_model

拿上週程式來用將glm.h加入同目錄裡

將glm.c 改成 glm.cpp 並且加入codeblocks

右鍵點擊 add file 加入檔案














#include <GL/glut.h>
#include "glm.h"///把source.zip裡的glm.h放在相同目錄下
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glutSolidTeapot( 0.3 );
    glutSwapBuffers();
}
int main(int argc, char**argv)
{
    glutInit( &argc, argv );
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week08");

    glutDisplayFunc(display);
    glutMainLoop();
}

step02-2

接下來要載入匯出的MAYA模型OBJ檔,將模型OBJ檔丟入指定的資料夾 
加幾行程式碼:
GLMmodel * pmodel = NULL;
if(pmodel==NULL)
    {
        pmodel = glmReadOBJ("f-16.obj");
        glmUnitize(pmodel);
    }
    glmDraw(pmodel, GLM_SMOOTH|GLM_MATERIAL);










step03-1 
開新的專案名稱week08-2 glm model texture
複製week08-1的main.cpp程式貼上
將pmodel = glmReadOBJ(".obj")
    glmFacetNormals(pmodel);
    glmVertexNormals(pmodel,90);














複製貼上week07_mytexture程式碼






















沒有留言:

張貼留言