2023電腦圖學 Computer Graphics 授課教師: 葉正聖 銘傳大學資訊傳播工程系 每週主題: 程式環境、點線面顏色、移動/旋轉/縮放與矩陣(Matrix)、階層性關節轉動(T-R-T)、做出機器人、打光、貼圖、glu/glut函式、鍵盤、滑鼠、計時器(timer)、讀入3D模型、粒子系統、聲音、特效、投影矩陣、攝影機與運鏡、機器人2.0、期末作品
2023年6月1日 星期四
2023年5月25日 星期四
mei's week15
電腦圖學
week15-1
下載win32和data
開啟Projection的檔案
gluLookAt了解每一個參數所旋轉的位置
分別是X Y Z
week15-2
week15-3
2023年5月18日 星期四
mei's week14
電腦圖學
week14-1
加入定時旋轉
用Keyboard程式,用任意鍵可以旋轉
week14-2
增加mouse跟motion可以跟著滑鼠移動
按下Enter可執行
week14-3
開啟上週Final Project
修改ID 使我們點擊時會出現顏色
現在更改 使得手臂旋轉
2023年5月11日 星期四
mei's week13
電腦圖學
week13-1
week13-2
week13-3
2023年5月4日 星期四
mei's week12
電腦圖學
week12-1
開啟一個Codeblocks檔案
開啟檔案指標fopen()
檔案指標 fout = fopen("檔名","模式");
執行檔案後,會出現一個新的txt文字檔在桌面
week12-1.1.2
會寫之後來試著讀讀看資料
week12-1 1.3
之後試著,又讀又寫
week12-2
開啟GLUT專案
寫出會隨著滑鼠移動的茶壺
稍微更改一下,加入第一堂課所教的內容
week12-3
把執行檔的位置改成現在所在目錄
以後工作執行目錄就會在你程式專案的目錄裡
再把 freeglue.dll檔 拉去我們的專案裡
2023年4月27日 星期四
mei's week11
電腦圖學
week11-1鍵盤操作
先介紹今天的主題,使用鍵盤來控制程式
了解如何寫程式,來用鍵盤操作
寫個範例Key==27,Esc
week11-2點擊出音效
在最前面加入#include <windows.h>///放第一行
在中間加入
if(key == '1') PlaySound("C:\\Users\\Administrator\\Desktop\\do-re-mi\\do.wav",NULL, SND_ASYNC);
if(key == '2') PlaySound("C:\\Users\\Administrator\\Desktop\\do-re-mi\\re.wav",NULL, SND_ASYNC);
if(key == '3') PlaySound("C:\\Users\\Administrator\\Desktop\\do-re-mi\\mi.wav",NULL, SND_ASYNC);
week11-3 PlaySound
新開一個檔案,更改一些地方
讓音樂自動不同步的出現
試著把絕對路徑改成相對路徑
week11-4
本來是使用wav檔,現在改成使用mp3
#include "CMP3_MCI.h"///使用外掛,用雙引號表示是同一目錄下
CMP3_MCI myMP3;///宣告物件變數
把工作執行目錄更改一個小數點
再更改 myMP3.Load("suzume.mp3"); 就可以正常讀取使用
2023年4月20日 星期四
mei's week10
電腦圖學
week10
2023年4月6日 星期四
mei's week08
電腦圖學
week08-1
先點擊網址下載 這裡 win32和date
還要下載source
v 對應的是 vertex頂點
vt對應 貼圖座標 glTexCoord2f(tx, ty)
vn對應 vertex normal法向量
f對應 面 face
把自己的3D模型匯出檔案
並改進去別人的程式碼
step01 將自己的MAYA模型匯出並選擇Obj檔
step02 將檔案拉進去data資料夾並偽裝成f-16
step03 把內容改一下
week08-2 開新專案week08-1_glm_model
拿上週程式來用將glm.h加入同目錄裡
將glm.c 改成 glm.cpp 並且加入codeblocks
右鍵點擊 add file 加入檔案
加入obj檔案
程式碼glmUnitize(pmodel);可以縮放大小
week08-3 加入鋼彈模型
將咒語三行改過去(參考上禮拜的設定)
讓它旋轉
2023年3月30日 星期四
✿mei's week07
✿電腦圖學✿
week07-1
先到這裡下載date和win32的檔案
解壓縮將date資料夾拉到windows
打開裡面 Texture.exe的程式 執行看看不同的色彩
利用程式理解貼圖座標的意思
改變glTexCoord2f( 1.0, 1.0); glVertex3f( 1.0, 1.0, 0.0);
超過的話從0開始(●'◡'●)
glPushMatrix();//備份矩陣
glTranslatef(x,y,z);//移動
glRotatef(angle,x,y,z);//轉動
glScalef(x,y,z);//縮放
glBegin(GL_POLYGON);//開始畫
glColor3f(r,g,b);//色彩
glTexCoord2f(tx,ty);//貼圖座標
glNormal3f(nx,ny,nz);//打光的法向量
glVertex2f(x,y);//頂點
glEnd();//結束畫
glPopMatrix();//還原矩陣
week07-2下載OpenCV
注意下載的步驟
點開下載檔,這步注意第一項不要點擊
接下來重新打開Codeblocks
打開sitting compiler設定以下參數
開啟新的檔案,先試著打開一個圖片
week07-3
將圖片放在freeglut>bin 命名earth.jpg
加上一段程式碼
glBegin(GL_POLYGON);
glTexCoord2f(0, 0);glVertex2f(-1, +1);
glTexCoord2f(1, 0);glVertex2f(+1, +1);
glTexCoord2f(1, 1);glVertex2f(+1, -1);
glTexCoord2f(0, 1);glVertex2f(-1, -1);
glEnd();
























































