2024電腦圖學 Computer Graphics 人智二甲 授課教師: 葉正聖 銘傳大學人工智慧應用學系
每週主題: 程式環境、點線面顏色、移動/旋轉/縮放與矩陣(Matrix)、階層性關節轉動(T-R-T)、做出機器人、打光、貼圖、glu/glut函式、鍵盤、滑鼠、計時器(timer)、讀入3D模型、粒子系統、聲音、特效、投影矩陣、攝影機與運鏡、機器人2.0、期末作品
2024年2月26日 星期一
盛week02
##點、線、面、色彩
1. 下載本的範例 https://jsyeh.org/3dcg10 windows.zip 及 data.zip
2. 在下載資料夾, 把windows.zip => windows資料夾, data.zip裡面的data拉到下載\windows 資料夾裡
3. 執行 Shape.exe 便可操作今天的課本範例
4.mouse 右鍵, 在右邊可切換 點﹐線、面
5. mouse 右鍵, 在左邊可切換大的頂點、逐個色彩
6. mouse 左鍵, 在右邊可按「綠色數字」
可以改色彩
glColor3f(r,g,b)
可以改頂點座標
glVertex2f(x,y)
##要寫程式, 試試看點線面色彩
1. moodle下載 freeglut (桌面還有一份) 點開它
2. 把freeglut 用mouse drag到桌面,就裝好了
3. 把桌面\freeglut\lib\libfreeglut.a 複製成 libglut32.a
4. CodeBlocks: File-New-Project, 選GLUT專案目錄選桌面, 專案名 取 week02_glut_color_teapot
5. GLUT 要選 桌面的 freeglut
6. 執行時, 會跳出上周的程式。 我們來改程式吧!!
7. 左邊的 sources 的 main.cpp點開 把上週的10行貼上來。
第一行 可做出 安妮亞髮色
第二行 可做出 安妮亞膚色
##要設定色彩
1. glColor3f(r,g,b);
2. 0,1,0 綠色, 1,0,0紅色 0,0,1 藍色, 1,1,0黃色
3. 可用小畫家, 來畫其他的色彩。 使用滴管來吸色, 使用「編輯色彩」來查看色彩的值。
/255.0變成有小數點的float浮點數
4. 老師以安妮亞的色彩為例, 兩個不同大小的茶壺, 用不同的色彩, 畫出兩色的效果
## 畫三角形
1. File-New-Project, GLUT專案, week02_glut_triangle
2. 一樣, 把今天的10行貼下來, 再加上今天的第2個主角: 頂點
3. glBegin(GL_POLYGON);
4. glColor3f(r,g,b)
5. glVertex3f(x,y)
6. glEnd();
7. 以上是期中考試的10提其中的3題, 佔30分。
8. 在真的實作時, 會有很多組 glColor3f(r,g,b); 及glVertex2f(x,y);
##用小畫家, 幫我們找到「任意形狀」的頂點座標
1.開啟小畫家, 把圖片放上去
2. 小畫家的座標裡, 左上角是0,0, 右下角是300, 300(假設圖片寬度300 高度300)
3. 關於座標, OpenGL, 預設是「正中間0,0」, 右邊是+1, 左邊是-1, 上面是+1, 下面是-1
三角形 程式碼
成果
##用小畫家, 幫我們找到「任意形狀」的頂點座標
1. 開啟小畫家, 把圖片放上去
2. 小畫家的座標裡, 左上角是0,0, 右下角是400, 400(假設圖片寬度400, 高度40)
3. 關於座標, OpenGL 預設是「正中間0,0」, 右邊是+1, 左邊是-1, 上面是+1, 下面是-1
4. 把小畫家的 (x座標-中心點200)/200.0 變成 OpenGL的座標 口訣: 減一半、再除一半.0
5. y座標比較麻煩 -(y座標-中心點200)/200.0, 口訣: 減一半、除一半、再加負號
6. File-New-Project, GLUT專案, week02_glut_mspaint_help_draw
訂閱:
張貼留言 (Atom)
-
Week11 week11-1 TRT GlutSolidCube Mybody Myarm 將 上週的旋轉手臂 複製到11-1 理解手臂旋轉的概念 week11-2 Obj Gundam Opencv 1.安裝openCV 2.重開codeblock 3.複製week9-1...
-
GLUT程式 10行程式碼 #include <GL/glut.h>///使用GLUT外掛 void display() { glutSolidTeapot(0.3); glutSwapBuffers(); } int main(int ...
-
2024-06-03 Week16 1. 主題: camera 攝影機 2. 主題: Projection 投影 3. 主題: 兩張貼圖 4. 主題: glmUnitize() vs. 自己調整大小 5. 期末作品 vs. 作業3 ##先用上課的課本教材 1.data.zip...
沒有留言:
張貼留言