一、3D模型
網址:https://jsyeh.org/3dcg10/
開啟data資料夾,用Notepad++開啟porsche(車子)的兩個檔案
從第8行開始( .obj 檔 )v 是 vertex 頂點
vn 是 vertex normal 法向量
( vt 是 glTexCoord2f(x,y)貼圖 )
f 是 face 面( 第幾個頂點 / 貼圖 / 法向量 )
用 Maya 匯出 3D 模型( OBJ 檔)
網址:https://www.youtube.com/watch?v=D4a7cNFF9kQ
用範例開啟自己的3D模型
用Maya做好模型之後匯出為OBJ檔,把檔名改成跟範例資料夾data裡的某個檔案一模一樣,並放進data資料夾,取代原本的檔案
開啟範例後,右鍵右邊的畫面,點選剛剛的F-16二、glm.h
初始
建立新GLUT專案
把初始程式碼打上
glm.h
加上#include "glm.h"記得把source壓縮檔裡的glm.h檔案放進GLUT專案的資料夾裡
確定可以執行程式glm.cpp
把source壓縮檔的glm.c放進GLUT專案的資料夾裡,並把檔名改成 glm.cpp回到CodeBlock,對左側視窗的目錄右鍵,Add files...。選擇 glm.cpp讀入檔案並畫出
把剛剛的F-16兩個檔案( .obj .mtl)放進freeglut資料夾裡的bin資料夾
打上新的程式碼
執行程式會發現沒看到剛剛加的模型,那是因為太大了
縮放大小
打上Unitize()函式,縮放pmodel的大小,記得把茶壺刪掉
執行程式
三、貼圖myTexture()
複製
建立新GLUT專案,把剛剛的程式碼複製貼上
並加上新的程式碼,讀取的檔名要改成Gundam.obj
把Gundam.obj跟Gundam.mtl放進freeglut的bin裡回到CodeBlock,跟剛剛一樣,要Add files,選glm.cpp,然後glm.h放到GLUT專案的資料夾裡網址:https://gist.github.com/jsyeh
複製myTexture上面的程式碼
再安裝OpenCV2.1,步驟同上周,CodeBlock設定也要改重開CodeBlock,打開剛剛的專案(全選專案裡的檔案跟資料夾)
在main()函式裡加入myTexture("Diffuse.jpg");
把display()函式裡加上GLM_TEXTURE把Diffuse.jpg貼圖圖檔放在freeglut的bin裡面並且用小畫家把圖上下翻轉
沒有留言:
張貼留言