Computer graphics 筆記

1. 在螢幕上, 將3D實體成現在2D的螢幕上. 簡言之, 即透過3D繪圖的演算法, 計算出投影(projection).
2. 對一個實景(scene)作 projection, 需要一些資訊, 並將這些資訊轉為數值作計算:
 $ 定義一個頂點(Vertex), 並與其他vertice組成一個mesh架構, 來描述整個scene.
 $ 每個Vertex具有許多屬性(attribute)
  * coordinate
  * normal
  * color
  * texture cordinate
 $ 由vertice間連結成的mesh, 主要有3種primitive: point, line, and triangle.
 $ 最後將這些primitives(geometric object)轉為RGB(pixels).

3. 3D computer graphics最主要的兩個過程是modelingrendering.
 $ modeling: 將scene轉為vertex & mesh architecture.
 $ rendering, render: 目前覺得最合理的意思是著色. 也就是將vertex轉為pixels.
 
4. rendering的技術有三:
 $ ray-tracing:
  定義由投影點(camera/eye)到該pixel的位置的路徑為ray, 並透過光的反射折射等原理,
  根據一路上碰到的物體或光源來得知該pixel的顏色.(好抽象...)
 $ radiosity:
  (略, 太難懂)
 $ rasterizing:
  光柵化, 是說將vector graphics轉為raster graphics的過程.
  raster graphics是指由pixel組成的圖形, 就是點陣圖.
  vector graphics是指由geometric model組成的圖型.
  EX. 在一個白色畫面上有一個紅色的圓
   Raster grphics: 這是一個由紅色跟白色pixel所排列出的圖形
   vector grphics: 以向量的方式表示這個圓(圓心,半徑,顏色)

5. 在硬體加速上, rasterizing實現度最高, 為實作3D pipeline主流(但realistic最差)

 



[參考1]

Comments

Popular posts from this blog

股票評價(Stock Valuation) - 股利折現模型

openwrt feed的使用

How to convert Markdown into HTML