week08
下載課本範例 https://jsyeh.org/3dcg10/
下載 source data win32
打開AL.mtl 看裡面的 ka kd
打開AL.obj 裡面很多內容
#代表註解
v 代表頂點 後面三個數字是頂點座標
f 代表面 face 或 facet 後面有頂點編號
g 代表 group
week08-0 Sample
freeglut下載
libglut32
week08-1_glm_gundam
從課本下載範例 source
把glm.c glm.h 新增到檔案裡
glm.c 改名成 glm.cpp
右鍵add file
新增資料夾 data
把桌面鋼彈裡面的兩個檔案丟進去
貼上上周的程式碼
#include "glm.h"
GLMmodel * pmodel = NULL;
void drawmodel(void)
{
if (!pmodel) {
pmodel = glmReadOBJ("data/porsche.obj");
if (!pmodel) exit(0);
glmUnitize(pmodel);
glmFacetNormals(pmodel);
glmVertexNormals(pmodel, 90.0);
}
glmDraw(pmodel, GLM_SMOOTH | GLM_MATERIAL);
}
把porsche換成Gundam
week08-2_glm_gundam_opencv_texture
安裝opencv 記得要add path
重開 codeblocks
安裝OpenCV2.1記得要Add PATH,不要改目錄
關閉重開CodeBlocks(才會把PATH設定設好,要記得存檔)
重作剛剛的glm.h glm.cpp放到目錄裡,把Gundam.obj Gundam.mtl及新的Diffuse.jpg都放到專案的data目錄裡
在專案裡,按右鍵Add Files把glm.cpp加入專案
(歷史餘毒)要把專案的工作執行目錄,換成小數點.
要把 桌面\freeglut\bin\freeglut.dll 複製到專案目錄裡
Setting-Compiler要加入OpenCV相關的3個設定
重開 codeblocks
安裝OpenCV2.1記得要Add PATH,不要改目錄
關閉重開CodeBlocks(才會把PATH設定設好,要記得存檔)
重作剛剛的glm.h glm.cpp放到目錄裡,把Gundam.obj Gundam.mtl及新的Diffuse.jpg都放到專案的data目錄裡
在專案裡,按右鍵Add Files把glm.cpp加入專案
(歷史餘毒)要把專案的工作執行目錄,換成小數點.
要把 桌面\freeglut\bin\freeglut.dll 複製到專案目錄裡
Setting-Compiler要加入OpenCV相關的3個設定
compiler include 要加入 C:\OpenCV2.1\include
linker 的 lib 要加 C:\OpenCV2.1\lib
linker 設定 要加cv210 cxcore210 highgui210
改一下glmDraw(pmodel,GLM_SMOOTH|GLM_MATERIAL|GLM_TEXTURE);
新增一個專案,命名為"week08-3_glm_gundam_opencv_texture_lighting"
重作剛剛的glm.h glm.cpp放到目錄裡,把Gundam.obj Gundam.mtl及新的Diffuse.jpg都放到專案的data目錄裡
專案設定 左邊 右邊-最下面Properties跳出來的第二頁,工作執行目錄executable working directory設成小數點.
最後,在main.cpp裡,貼入week08-2_glm_gundam_opencv_texture程式碼8行陣列+12+2行的函式呼叫
Git 指令
cd desktop
git clone https://github.com/mickey1132/2024-graphicsA
cd 2024-graphicsA
git status
git add .
git status
git config --global user.email mickylin1132@gmail.com
git config --global user.name mickey1132
git commit -m WeekXX
git push
沒有留言:
張貼留言