2022年4月12日 星期二

shhhhhi : )

 week08

1.jsyeh.org/3dcg10/ 下載sources,data,windows,執行Light Material.exe(上周的打光範例)

2.新增GLUT專案,把程式碼複製到Notepad++。

(GLUT callback? 會被GLUT呼叫的函式,EX: display() , mouse() , keyboard() , motion() )

3.打光的程式碼 (1) 打光的陣列 (2) 打光的函式

4.開啟上周的light-teapot程式碼,執行後看到發光的茶壺。

5.把source.zip裡的三個程式,glm.h , glm.c , lightmaterial.cpp,拿出來用,便可讀入模型。

(1) #include "glm.h"///雙引號,同目錄裡的檔案

(2) GLMmodel*pmodel=NULL;///只到GLMmodel模型的指標,NULL代表還沒好

(3) drawmodel(void)

{

    if (!pmodel) {

pmodel = glmReadOBJ("data/soccerball.obj");

if (!pmodel) exit(0);

glmUnitize(pmodel);

glmFacetNormals(pmodel);

glmVertexNormals(pmodel, 90.0);

    }


    glmDraw(pmodel, GLM_SMOOTH);

}///用來畫3D模型的程式碼,學習它

6.畫模型:

a. (用哪一行程式?)grawmodel() TODO:載dispplay()取代glutSolidTeapot()

b. (檔案在哪裡?)要放在working dir 工作目錄裡

c. 在CodeBlocks下方藍色BUlid Log 說我們的工作目錄在...

d. 剛剛下載的data資料夾放在工作目錄裡freeglut/bin

e. 把glm.h還有glm.c(檔名改成glm.cpp)放到week08_model目錄裡 p.s:附檔名要看得到

f. 在week08_model的專案中,Add 同目錄裡的glm.cpp


程式碼:


沒有留言:

張貼留言

VERY BEAUTIFUL, VERY POWERFUL

一.     一樣先安裝且設定好freeglut,OpecCV, 開啟CodeBlocks建立新專案 week11_gundam,                 把 MyGundam.zip下載解壓縮後的data資料夾放到freeglut/bin裡面 把week09_openc...