2017電腦圖學(computer Graphics)
2017-02-21 Week01
2017-02-21 Week01
第01週進度:
- 為什麼學 (Why) 圖學Graphics
- 為什麼學 (Why) OpenGL
- 大二下3門最精彩的必修課介紹
- Maya, Unity, OpenGL (苦盡甘來)
- 展示: WebGraphics demo (課堂作業)
- 展示: 學長姐們的作品精華
- 實作: 第一個 OpenGL程式 (課堂作業)
- 實作: 第一個 GLUT程式 (課堂作業)
- 實作: 第一個 新手打造的圖學程式 (課堂作業)
(1)為什麼學 (Why) 圖學Graphics
電腦圖學(英語:computer graphics,縮寫為CG)
是研究電腦在硬體和軟體的幫助下建立電腦圖形的學科
主要關注數位合成與操作視覺的圖形內容。
雖然這個詞通常被認為是指三維圖形,事實上同時包括了二維圖形以及影像。電腦圖學一個主要的目的就是要利用電腦產生真實感的圖形。
為此,必須建立圖形所描述的場景的幾何表示
再用光照模型,計算在假想的光源、紋理、材質屬性下的光照明效果。
所以電腦圖學與電腦輔助幾何設計有著密切的關係。
圖形學可以表示幾何場景的曲線曲面造型技術和實體造型技術作為其研究內容。
真實感圖形計算是以數字圖象的方式提供,電腦圖學和圖像處理有著密切的關係。
(2)為什麼學 (Why) OpenGL
https://www.zhihu.com/question/29133985
甚麼類型的人需要學習OpenGL
https://www.zhihu.com/question/19993499
WebGL是否需要以OpenGL為學習基礎
https://cg2010studio.com/2011/07/02/directx-and-opengl/
DirectX與OpenGL
(3)大二下3門最精彩的必修課介紹
(4)展示: WebGraphics demo (課堂作業)
藉由WebGraphics demo(Web GL)來測試電腦是否可以使用相關功能網址:http://madebyevan.com/webgl-water/

(5)展示: 學長姐們的作品精華
2015電腦圖學A
http://2015graphicsa.blogspot.tw/
(6)實作: 第一個 OpenGL程式 (課堂作業)
第一個Open GL專案
Step1:打開 Code Blocks
Step2:File>New>Project>OpenGL Project >設目錄、專案名
Step3:開啟所設資料夾中<main.cpp>檔案並執行即可看到圖像


下圖為程式編譯結果
(7)實作: 第一個 GLUT程式 (課堂作業)
第一個GLUT專案Step1:打開 Code Blocks
Step2:File>New>Project>GLUT Project >設目錄、專案名
Step3:開啟所設資料夾中<main.cpp>檔案並執行即可看到圖像

(8)實作: 第一個 新手打造的圖學程式 (課堂作業)
使用上述的GLUT專案,把main.cpp程式碼減少並且執行便可看到茶壺的圖像《茶壺的故事》
程式碼:
#include <GL/glut.h>
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glutSolidTeapot(0.3);//畫茶壺
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
return EXIT_SUCCESS;
}
下圖為程式編譯結果
(9)回家作業
HW1 在家寫 OpenGL程式
看你家裡的電腦是否可以用 WebGL的3D程式
詳細請詳見(4)
2. 請把課堂作業4(親手打造第一個 GLUT程式),在家裡新增專案看看。
請注意: (1) 一定要在家裡寫, 不能在學校寫, (2) 上傳截圖即可, (3) 越早交,成績越高
詳細請詳見(8)
詳細請詳見(4)
詳細請詳見(8)






沒有留言:
張貼留言