我做了一隻蘑菇
他的身體在裏頭是固定不動的
手腳跟眼睛以及腿都可以移動
並且是對稱的方向
按1 可以用滑鼠對左手上下揮動
按2 可以用滑鼠對右手上下揮動
按3 可以用滑鼠對右眼左右飄移
按4 可以用滑鼠對左眼左右飄移
按5 可以用滑鼠對左腳開合控制
按6 可以用滑鼠對右腳開合控制
按住S可以存入所移動的數據
關掉之後再開
可以再按P讀取上一次S所存入的檔案
為了這次作業幾乎下課都留在學校做QAQ
因為家裡的電腦快要不行了常常跑到當機
而且防毒一直一直要擋程式編譯
所以也確認了在學校可以執行
音樂是放我最愛的動畫 神隱少女 的原聲帶
我很喜歡這樣搭配 有一種自己是宮崎駿的感覺
最後要加貼圖的時候試了一整個下午
到現在的6:26分
我用我二修時的改背景顏色的語法
居然就成功了???
GLfloat pos[]= {0, 0, -1, 0};
glLightfv(GL_LIGHT0, GL_POSITION, pos);
glEnable(GL_LIGHT0);
上面三句加上去之後我整個海闊天空
我想 這應該是把背景再往後移動的意思?
總之在CC電腦教室看到我的蘑菇終於有草地之後
我很想哭。
謝謝老師,老師這是我四修電腦圖學,可以讓我過關嗎QAQ
2017電腦圖學 Computer Graphics 授課教師: 葉正聖 銘傳大學資訊傳播工程系 每週主題: 程式環境、點線面顏色、移動/旋轉/縮放與矩陣(Matrix)、階層性關節轉動(T-R-T)、做出機器人、打光、貼圖、glu/glut函式、鍵盤、滑鼠、計時器(timer)、讀入3D模型、粒子系統、聲音、特效、投影矩陣、攝影機與運鏡、機器人2.0、期末作品
2017年7月2日 星期日
Week18 魚安的期末作品影片
2017年6月19日 星期一
Week17 魚安的筆記
2.背景貼圖示範
3.打光,貼圖切換
4.讀檔內插示範
5.學期總複習
必須先下載OpenCV 2.1 並安裝到桌面
還需要cv210 / cxcore210 / highgui210 這三個檔案
void display()
{
glEnable(GL_DEPTH_TEST); ///要啟動 Detph Test 深度值的測試,3D顯示才正確
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glBegin(GL_POLYGON);
glTexCoord2f(0,0); glVertex3f(-1,+1,0);///前面是貼圖座標,後面是3D頂點
glTexCoord2f(1,0); glVertex3f(+1,+1,0);
glTexCoord2f(1,1); glVertex3f(+1,-1,0);
glTexCoord2f(0,1); glVertex3f(-1,-1,0);
glEnd();
glPopMatrix();
glFlush();
}
void myInit()
{
quad = gluNewQuadric();
id = myTexture("images.jpg");///id為貼圖,這樣就可以讀到貼圖的路徑
}
int myTexture(char *filename)
{
IplImage * img = cvLoadImage(filename); ///OpenCV讀圖
cvCvtColor(img,img, CV_BGR2RGB); ///OpenCV轉色彩 (需要cv.h)
glEnable(GL_TEXTURE_2D); ///1. 開啟貼圖功能
GLuint id; ///準備一個 unsigned int 整數, 叫 貼圖ID
glGenTextures(1, &id); /// 產生Generate 貼圖ID
glBindTexture(GL_TEXTURE_2D, id); ///綁定bind 貼圖ID
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); /// 貼圖參數, 超過包裝的範圖T, 就重覆貼圖
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); /// 貼圖參數, 超過包裝的範圖S, 就重覆貼圖
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); /// 貼圖參數, 放大時的內插, 用最近點
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); /// 貼圖參數, 縮小時的內插, 用最近點
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, img->width, img->height, 0, GL_RGB, GL_UNSIGNED_BYTE, img->imageData);
return id;
}
2017年3月6日 星期一
Week02 魚安的筆記
今天首先就畫了一個茶壺
只要10行程式碼就可以畫茶壺
還可以自由變換顏色
以下圖片有程式碼解析
glColor3f(red,green,blue)
想要顯示出自己想要的顏色
可以透過小畫家的顏色工具來選取
來取得代碼
除了可以修改顏色之外
也可以透過修改X Y Z軸數字來畫自己想畫的圖案
最後就是利用今天所學到的
來用三個三角形畫圖片~
完成回家作業!!
2017年2月20日 星期一
Week01 魚安的筆記
HW01
可以用這個網頁測試是否能跑動圖學檔案
由測試結果得知學校電腦是可以的唷 ^O^
HW02
步驟一
先開啟code block
點選file
點選new
點選preject
步驟二
選擇OpenGL專案
步驟三
將檔名設定為01160360_hw01
並把檔案儲存在桌面
步驟四
點開main.c的程式檔
會發現有179行的程式
不過不要緊張不用動它們
直接選擇上面的除錯執行
步驟五
執行之後會跑出一個會旋轉變色的三角形
就成功惹!!!!!
HW03
步驟一
先到社團可以下載老師已經處理好的freeglut資料夾
先把他下載下來解壓縮到桌面~
步驟二
一樣開啟code block
選擇file
選擇new
一樣是GLUT project
設定好檔名之後下一步
把解壓縮在桌面的freeglut的資料夾的網址貼到上頭
步驟三
一樣點開main.cpp就可以看到很多程式碼
也不要動它直接除錯執行
就可以看到三個在旋轉的立體圖形囉 ^_^
訂閱:
文章 (Atom)













