作者neoneon (紅茶を飲む程度の能力)
看板NCTU-Teacher
標題Fw: [心得] 莊榮宏 計算機圖學概論
時間Tue Jul 12 04:04:26 2016
※ [本文轉錄自 neoneon 信箱]
作者:
[email protected] ("愛宕有機奈米負離子貓")
標題: [心得] 莊榮宏 計算機圖學概論
時間: Sun Jul 10 12:42:58 2016
作者: smilecat13 (微笑的貓) 看板: NCTU-Teacher
標題: [心得] 莊榮宏 計算機圖學概論
時間: 2014/07/14 Mon 23:16:02
⊕課名⊕
計算機圖學概論
▲教授▲
莊榮宏
★修課年度★(請加註開課單位 如:大三通識、XX系選修、XX所)
102學年度下學期 資工系選修
£教了什麼£(課程大概內容。或是額外學會了什麼東西。)
此門課程分成兩部分:
1. 圖學理論
(1) Overview
概念性的講解圖學基本觀念,會涉及很多部分,
之後幾章就是針對這些部分再去深入探討。
這邊最重要的地方,就是要了解圖學的pipeline概念,
整個學期要教的東西就是pipeline裡的各個部分。
(2) Viewing Pipeline
主要重點就兩個: view transformation & view projection
會用到一些線性代數的內容,
雖然一開始會看到一堆矩陣乘來乘去感覺很恐怖,
但其實不會很難,觀念弄懂後就很好推導了。
(3) Lighting & Shading
教物體的打光和產生顏色的觀念。
(4) Hidden Surface Removal
z-buffer、scan-line、painter's algorithm、BSP tree
(5) Texture Mapping
2D-to-3D貼圖技巧、anti-aliasing(mip map)、環境貼圖
(6) Buffering
介紹OpenGL中的各種buffer (這章的重點是stencil buffer)
(7) GPU Shaders
介紹GPU架構,最重要的就是那3個shader: vertex、geometry、fragment shader
(8) Global Illumination - Part I: Ray Tracing
會教環境光源的概念 (ray tracing)
2. OpenGL程式設計
(1) Basic Concept
基礎的OpenGL觀念,以及Visual Studio環境教學。
大部分人都是用VS做作業,也比較推薦用這個IDE。(而且助教才知道怎麼debug)
(2) Viewing Transformation
(3) Lighting
(4) Texture Mapping
(5) Buffering
使用stencil buffer去產生陰影效果
(6) GLSL (OpenGL Shader Language)
用shader程式算phong shading (傳統pipeline無法做到這件事)
雖然分成理論和程式這兩部分,
但彼此是息息相關的。
OpenGL難的地方就是難在圖學觀念,
而且常常會不知道怎麼debug。
因此我覺得上課觀念部分要聽懂,
才知道怎麼寫OpenGL。
而且寫過OpenGL作業後,
就更能夠理解上課教的理論內容。
◆上課方式◆(投影片、團體討論、老師教學風格)
圖學理論部分由老師上課,
OpenGL的部分由大助教(黃聰賢)上課。
老師是用自己做的投影片上課,
基本上考試也都只要讀投影片就OK。
(我雖然買了書,但幾乎都沒翻過,覺得超浪費...)
老師非常注重學生的反應,
常常教到一個段落後,
會問大家懂不懂、懂得舉手。
這學期班上的同學跟老師互動滿好的,
老師也變得越來越喜歡跟班上同學互動。
(其實互動也就只是問大家有沒有聽懂而已)
我覺得老師講解的滿清楚的,
當老師發現班上大部分人都聽不懂時,
就會重新講解一次。
不過碰到一些比較複雜的數學式子時,
老師常常會說「恩...等一下我看看吼...」,
然後就盯著投影幕沉思5分鐘 XDDDD
我覺得老師很認真在教學,
有一次老師卡在一個數學式子的推導,(texture mapping那邊)
然後下次上課時,
老師就自己手寫了推導過程,然後上傳到網頁給同學參考,
讓我覺得老師真的很認真!!
OpenGL的部分由大助教上,
也是用自製的投影片。
大助教會跟我們講OpenGL函式的使用方式,
然後最重要的是理論的部分,
這部分會跟老師的上課內容彼此呼應。
然後,大助教真的超強,
我覺得這門課都可以給他開了 www
有任何不懂的地方去問他,
他都會很仔細的教你。
▼考試作業▼
程式作業50% + 小考14% + 期中考18% + 期末考18%
(1) 程式作業 50%
就是寫OpenGL,會以老師上課教的內容為主。
總共有三次,分別佔15%、15%、20%,
但實際上有四次,第一次會分成兩個部分寫。
大助教會給範例程式,
上OpenGL時會很仔細的講解。
通常把範例程式的觀念搞懂,然後把範例拿來改一改就OK了。
(觀念真的最重要)
這門課要會用C++的STL,然後資料結構要學好,
不然會很痛苦,甚至會寫不出來。
然後程式能力也要有一定基礎,
不然寫到後來整個專案越來越大時可能會想撞牆。
每個作業都會有demo,然後助教會問你一些問題,
通常是觀念上的問題,問你為什麼要這樣寫之類的,
所以還是要把觀念弄懂才行 www
(2) 小考 14%
約1~2個禮拜會小考一次,
考的就是老師上課教的東西,不會很難。
小考目的是確保你有弄懂並跟上進度,
因為這門課要是前面沒學好,後面很有可能就GG了。
(3) 期中考 18%
一樣是考老師上課教的東西,全都是投影片上面的,
有部分會從小考出來,然後稍微變化一下,
但觀念有弄懂通常就不會太困難。
滿分110,
班平均好像8X吧,老師說是他目前教過所有班級中最高分的一屆 XD
(4) 期末考 18%
恩...老師期末考亂出啊啊啊啊啊啊啊啊!!!!!!!!!!!!!!!!!!!!!!!!!!
ray tracing只教不到兩堂課,
就考了35%,其中20%考pseudo code填空題......
重點是,viewing pipeline竟然一題都沒考啊!!!
有沒有搞錯啊?? 這明明才是重點中的重點吧!!
我後來去找大助教complain,他說老師一定搞錯範圍了 XDDD
然後還有一題是老師上課明明說不會考,結果還是考了...
不過老師考試當天就直接跟大家提示答案啦,應該算送分吧 XD
(不過沒去上課的人應該還是聽不懂老師的提示是啥意思)
滿分115,(還是110我忘了)
班平均不知道,助教沒有公布期末成績,要自己去問。
(5) 學期成績
我程式作業拿滿分,小考平均應該有90分左右,
期中考&期末考都101分,
最後學期成績99,感覺應該是沒調分吧~
這學期班上的同學都很認真,分數也都很高,
期中考成績公布時,老師還說期末應該是不用調分了 XD
¥其他¥(是否注重出席率or嚴禁遲到?需要的基礎?)
老師有點過一次名,
不過這學期班上的出席率都很高,
兩堂課的那天約有8成,一堂課的那天也有6成左右。
需要的基礎,
我認為基礎的矩陣乘法運算要會吧,
這學期用到很多矩陣運算,但不會太難。
然後,程式要有一定功力,
不然作業應該會寫不出來。
¢最後想說的話¢
我覺得這門課沒辦法自修,
老師上課都是在講他的投影片,
考試也都是考他上課講的內容,
投影片要是沒有去聽課,應該很難自己看的懂。
然後要勤做筆記,
他投影片內容雖然很多,
但他只會講部分比較重要的觀念,
那些就是考試一定會考出來的地方。
一開始的pipeline觀念非常重要,
要是前面不認真聽,
應該後面的就完全聽不懂了。
老師的投影片設計,
我覺得是只要前面沒弄懂,
通常後面也就會跟著聽不懂。
所以要滿認真的去聽課,
我想這也是為什麼班上出席率會這麼高的原因。
我這學期只有一堂課忘記去上課,(不是睡過頭,真的是蠢到忘記去上課 = =)
基本上可以算是全勤。
每堂課都很認真的在聽老師講解,
也非常努力的在做筆記,
這對考前複習非常有幫助。
(應該說不去聽課的話,考前會想撞牆)
然後是程式部分,
有興趣的話,可以訓練自己用OO Desgin的方式撰寫,
有些程式設計原則,也可以從現在開始培養,
去學一些Design Pattern的東西,
之後管理大型專案時會輕鬆許多。
像是這次的圖學作業,會吃很多場景檔,
很多人都是直接刻在程式碼裡,
但比較推薦的做法是寫一個config檔,
程式去讀那個config檔,就不用重新compile。
有心的話,
在這學期的程式作業中,
可以大幅增進自己的程式功力,
包括一些設計模式、軟體維護的技巧等等,
對未來開發大型專案都會有所幫助。
&誰適合修這門課&
不翹課、喜歡寫程式的人
P.S.
我有把這學期的小考&期中考掃描成pdf檔案上傳到考古題系統,
助教有提供小考解答,對未來修課的同學應該會很有幫助,
可以參考看看 : )
--
※ Origin: 交大次世代(bs2.to)
◆ From: 112.104.192.186
作者從 112.104.192.186 修改文章於 2014/07/14 Mon 23:34:12
推 jk4837:推薦這篇文章 07/15 12:46
推 liang0424:推薦這篇文章 07/19 14:46
推 superdog:推薦這篇文章 07/21 16:03
推 kevinqtt:推薦這篇文章 07/29 03:15
推 tingyagami:大助人真的超好, 作業不會寫的話都可以去找他XD 07/29 10:06
→ smilecat13:http://oldexam.nctucs.tw/down/1195 01/11 01:13
→ smilecat13:有滿多外系的同學跟我要考古題,這邊是連結 01/11 01:14
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 轉錄者: neoneon (106.105.175.48), 07/12/2016 04:04:26
1F:推 josephcc: 推薦這篇文章 09/28 05:58