2017年2月21日 星期二

17/02/21 Te-Yu,Lu的電腦圖學筆記


2017電腦圖學(computer Graphics)
2017-02-21 Week01

第01週進度:
  1. 為什麼學 (Why) 圖學Graphics
  2. 為什麼學 (Why) OpenGL
  3. 大二下3門最精彩的必修課介紹
    1. Maya, Unity, OpenGL (苦盡甘來)
  4. 展示: WebGraphics demo (課堂作業)
  5. 展示: 學長姐們的作品精華
  6. 實作: 第一個 OpenGL程式 (課堂作業)
  7. 實作: 第一個 GLUT程式 (課堂作業)
  8. 實作: 第一個 新手打造的圖學程式 (課堂作業)
 9.回家作業


 (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);

    glutMainLoop();

    return EXIT_SUCCESS;
}

下圖為程式編譯結果
























(9)回家作業

HW1 在家寫 OpenGL程式

看你家裡的電腦是否可以用 WebGL的3D程式
詳細請詳見(4)
2. 請把課堂作業4(親手打造第一個 GLUT程式),在家裡新增專案看看。
請注意: (1) 一定要在家裡寫, 不能在學校寫, (2) 上傳截圖即可, (3) 越早交,成績越高
詳細請詳見(8)


沒有留言:

張貼留言